publicclassBinaryThreeInOrderTravel{ public List<Integer> inorderTraversalI(TreeNode root){ List<Integer> ans = new ArrayList<>(); travel(root, ans); return ans; } publicvoidtravel(TreeNode root, List<Integer> ans){ if (root == null) return ; travel(root.left, ans); ans.add(root.val); travel(root.right, ans); }
public List<Integer> inorderTraversalII(TreeNode root){ List<Integer> ans = new ArrayList<>(); Stack<TreeNode> s = new Stack<>(); TreeNode t = root; while (t != null || !s.isEmpty()) { while (t!= null) { s.push(t); t = t.left; } t = s.pop(); ans.add(t.val); t = t.right; } return ans; } }