从上往下打印二叉树
题目
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
解题思路
- 层次遍历,通过队列进行辅助遍历
public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) {
ArrayList<Integer> res = new ArrayList<>();
LinkedList<TreeNode> nodeQueue = new LinkedList<>();
if (root == null) {
return res;
}
nodeQueue.addLast(root);
while (!nodeQueue.isEmpty()) {
TreeNode node = nodeQueue.pollFirst();
if (node == null) {
continue;
}
nodeQueue.addLast(node.left);
nodeQueue.addLast(node.right);
res.add(node.val);
}
return res;
}
当前内容版权归 Hayden Yang 或其关联方所有,如需对内容或内容相关联开源项目进行关注与资助,请访问 Hayden Yang .