LeetCode 94. 二叉树的中序遍历
下面的俩张图是 LeetCode上的题解https://leetcode-cn.com/problems/binary-tree-inorder-traversal/solution/die-dai-fa-by-jason-2/
我根据思路用Java做了实现,放在了最后。
PS:在学习的过程中,各路大神也给出了独特的思路,这里仅仅是一种,先掌握基础的,后有余力在多多学习、探索吧。
class Solution { public List<Integer> inorderTraversal(TreeNode root) { //中序遍历 Stack<TreeNode> stack = new Stack<>(); List<Integer> res = new ArrayList<>(); TreeNode rt = root; while(rt != null || !stack.isEmpty()){ while(rt != null){ stack.push(rt); rt = rt.left; } TreeNode node = stack.pop(); res.add(node.val); rt = node.right; } return res; } }