Untitled
unknown
plain_text
10 months ago
904 B
4
Indexable
class Solution {
public List<List<Integer>> zigzagLevelOrder(TreeNode root) {
List<List<Integer>> result = new ArrayList();
if(root == null)
return result;
Queue<TreeNode> q = new LinkedList();
q.add(root);
boolean isLevelOdd = false;
while(q.size() > 0) {
int size = q.size();
List<Integer> level = new ArrayList();
while(size-- > 0) {
root = q.poll();
level.add(root.val);
if(root.left != null)
q.add(root.left);
if(root.right != null)
q.add(root.right);
}
if(isLevelOdd)
Collections.reverse(level);
result.add(level);
isLevelOdd = !isLevelOdd;
}
return result;
}
}
Editor is loading...
Leave a Comment