题目描述
从上往下打印出二叉树的每个节点,同层节点从左至右打印。
解题思路
利用一个队列,广度优先遍历(BFS)。
代码
import java.util.ArrayList;
public class Solution {
public ArrayList<Integer> PrintFromTopToBottom(TreeNode root) {
ArrayList<Integer> ret = new ArrayList<>();
if (root == null)
return ret;
ArrayList<TreeNode> list = new ArrayList<>();
list.add(root);
for (int i = 0; i < list.size(); i++) {
ret.add(list.get(i).val);
if (list.get(i).left != null)
list.add(list.get(i).left);
if (list.get(i).right != null)
list.add(list.get(i).right);
}
return ret;
}
}
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于