JZ59-按之字形顺序打印二叉树
按之字形顺序打印二叉树
https://www.nowcoder.com/practice/91b69814117f4e8097390d107d2efbe0?tpId=13&tags=&title=&diffculty=0&judgeStatus=0&rp=1&tab=answerKey
public class Solution {
ArrayList<ArrayList<Integer>> ret = new ArrayList<>();
public ArrayList<ArrayList<Integer>> Print(TreeNode pRoot) {
if(pRoot==null){
return ret;
}
Queue<TreeNode> queue = new LinkedList<>();
queue.add(pRoot);
boolean flag = false;
while(!queue.isEmpty()){
ArrayList<Integer> list = new ArrayList<>();
int size = queue.size();
while(size>0){
TreeNode temp = queue.poll();
list.add(temp.val);
if(temp.left!=null){
queue.add(temp.left);
}
if(temp.right!=null){
queue.add(temp.right);
}
size--;
}
if(flag){
Collections.reverse(list);
}
flag= !flag;
if(list.size()!=0){
ret.add(list);
}
}
return ret;
}
}
三奇智元机器人科技有限公司公司福利 82人发布