网站友链是什么情况,深圳外贸公司招聘信息,今天发生的新闻,创建网站是怎么赚钱的二叉树的中序遍历 1、题目2、解题思路3、复杂度最优解示例4、抽象与扩展 1、题目
给定一个二叉树的根节点 root #xff0c;返回 它的 中序 遍历 。 示例 1#xff1a; 输入#xff1a;root [1,null,2,3]
输出#xff1a;[1,3,2]示例 2#xff1a;
输入#xff1a;roo… 二叉树的中序遍历 1、题目2、解题思路3、复杂度最优解示例4、抽象与扩展 1、题目
给定一个二叉树的根节点 root 返回 它的 中序 遍历 。 示例 1 输入root [1,null,2,3]
输出[1,3,2]示例 2
输入root []
输出[]示例 3
输入root [1]
输出[1]提示
树中节点数目在范围 [0, 100] 内-100 Node.val 100 进阶: 递归算法很简单你可以通过迭代算法完成吗 Related Topics 栈树深度优先搜索二叉树 2、解题思路
1、明确树的递归遍历就是左 中 右依次遍历 2、前中后序遍历的概念和适用场景
3、复杂度最优解示例 public ListInteger inorderTraversal(TreeNode root) {if (Objects.isNull(root)) {return new ArrayList();}ArrayListInteger order new ArrayList();order.addAll(this.inorderTraversal(root.left));order.add(root.val);order.addAll(this.inorderTraversal(root.right));return order;}
4、抽象与扩展
递归算法的最终结果有2点①递归方程②终止条件
在思考递归算法时要有递有归不能一味按计算机的角度一直往下传递因为人脑处理问题的角度跟计算机不同思考层次太深可能就绕不出来了。
建议是站在某一状态或说某一层次上默认后续状态正常返回也就是说只考虑2点①从这个状态怎么传递到下一状态②下一状态归来时这一状态怎么应对下一状态所归来的结果。