200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > 剑指 Offer 32 - I. 从上到下打印二叉树

剑指 Offer 32 - I. 从上到下打印二叉树

时间:2019-02-28 12:29:31

相关推荐

剑指 Offer 32 - I. 从上到下打印二叉树

从上到下打印出二叉树的每个节点,同一层的节点按照从左到右的顺序打印。

例如:

给定二叉树: [3,9,20,null,null,15,7],

3/ \9 20/ \15 7

返回:

[3,9,20,15,7]

提示:

节点总数 <= 1000

解题思路

使用队列实现层序遍历

代码

/*** Definition for a binary tree node.* public class TreeNode {*int val;*TreeNode left;*TreeNode right;*TreeNode(int x) { val = x; }* }*/class Solution {public int[] levelOrder(TreeNode root) {List<Integer> res=new ArrayList<>();Queue<TreeNode> queue=new LinkedList<>();if(root==null) return new int[0];queue.add(root);while(!queue.isEmpty()){int size=queue.size();for(int i=0;i<size;i++){TreeNode cur=queue.poll();res.add(cur.val);if(cur.left!=null) queue.add(cur.left);if(cur.right!=null) queue.add(cur.right);}}int[] ret=new int[res.size()];for(int i=0;i<res.size();i++){ret[i]=res.get(i);}return ret;}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。