class Solution {
List<Integer> resp = new ArrayList<>();
public List<Integer> inorderTraversal(TreeNode root) {
if (null == root) {
return new ArrayList<>();
}
middleOrder(root);
return resp;
}
public void middleOrder(TreeNode root){
if(root == null){
return;
}
middleOrder(root.left);
resp.add(root.val);
middleOrder(root.right);
}
}
class Solution {
List<Integer> resp = new ArrayList<>();
public List<Integer> inorderTraversal(TreeNode root) {
if (null == root) {
return new ArrayList<>();
}
Deque<TreeNode> deque = new LinkedList<>();
while (!deque.isEmpty() || root != null) {
while (root != null) {
deque.offerLast(root);
root = root.left;
}
root = deque.pollLast();
resp.add(root.val);
root = root.right;
}
return resp;
}
}