1.使用迭代法逐层遍历节点
2.使用队列先进先出的特点,从左往右加入队列
3.加入到ArrayList
public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) {
Queue<TreeNode> queen = new LinkedList<>();
ArrayList<Integer> arr = new ArrayList<>();
queen.offer(root);
while (!queen.isEmpty()) {
ArrayList<TreeNode> arr1 = new ArrayList<>();
int cunt = queen.size();
while (cunt-- > 0) {
javascript:void(0);
TreeNode node = queen.poll();
if (node == null) {
continue;
}
arr.add(node.val);
queen.add(node.left);
queen.add(node.right);
}
}
return arr;
}
网友评论