class Solution {
public List<Integer> inorderTraversal(TreeNode root) {
List<Integer> res = new ArrayList<>();
Stack<TreeNode> stack= new Stack<>();
while(root!=null||!stack.isEmpty()){
while(root!=null){//模拟递归里面if(root==null)跳出循环
stack.push(root);
root=root.left;//对应递归里面process(root.left);
}
TreeNode tmp = stack.pop();
res.add(tmp.val);
root=tmp.right;//对应递归里面process(root.right);
}
return res;
}
}
算法题:二叉树中序遍历非递归写法
最新推荐文章于 2024-11-04 19:24:37 发布