深圳58同城网站建设,网站托管如何收费,如何做seo搜索优化,网站建设设计公司 知乎一、题目 从上往下打印出二叉树的每个节点#xff0c;同层节点从左至右打印。 二、思路 二叉树的层次遍历#xff0c;可以借助队列实现。具体思路详见注释。 三、代码 import java.util.ArrayList;
import java.util.LinkedList;
/**
public class TreeNode {int val 0;Tree…一、题目 从上往下打印出二叉树的每个节点同层节点从左至右打印。 二、思路 二叉树的层次遍历可以借助队列实现。具体思路详见注释。 三、代码 import java.util.ArrayList;
import java.util.LinkedList;
/**
public class TreeNode {int val 0;TreeNode left null;TreeNode right null;public TreeNode(int val) {this.val val;}}
*/
public class Solution {public ArrayListInteger PrintFromTopToBottom(TreeNode root) {ArrayListInteger arrayListnew ArrayListInteger();//新建一个队列LinkedList实现了Quene接口可以直接当作队列来用LinkedListTreeNode queue new LinkedListTreeNode();TreeNode current; //当前节点if(root!null){queue.offer(root);//根节点入队列}while (!queue.isEmpty()) {current queue.poll(); //取出队列的头节点arrayList.add(current.val);//保存队列的头节点的值if (current.left ! null) {queue.offer(current.left); //如果当前节点的左节点不为空则左节点入队列}if (current.right ! null) {queue.offer(current.right); //如果当前节点的右节点不为空则右节点入队列}}return arrayList;}
} View Code --------------------------------------------------------- 参考链接转载于:https://www.cnblogs.com/hezhiyao/p/7632001.html