可能是最好理解的二叉树的层序遍历

题目描述:二叉树的层序遍历,按层数输出每一层的结果数组

代码实现

class Solution {public List<List<Integer>> levelOrder(TreeNode root) {List<List<Integer>> res = new  ArrayList<List<Integer>>();Queue<TreeNode> queue = new ArrayDeque<>();if(root != null){queue.add(root);}while(!queue.isEmpty()){int n = queue.size();List<Integer> level = new ArrayList<>();for (int i = 0; i < n; i++) { TreeNode node = queue.poll();level.add(node.val);if (node.left != null) {queue.add(node.left);}if (node.right != null) {queue.add(node.right);}}res.add(level);}return res;}
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/419034.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring学习9-MyEclipse中Spring工程使用@Resource注释的问题

在MyEclipse 的Spring工程中&#xff0c;有时候要使用Resource注释来驱动Spring配置。但是在MyEclipse添加Spring开发能力的操作中&#xff0c;并没有 把相关的库添加到工程的classpath中&#xff0c;所以使用该注解时会产生找不到类的错误&#xff0c;这是由于MyEclipse带的Sp…

jdk1.8对synchronized锁的优化

synchronized 锁的优化&#xff1a;锁的四种状态-无锁&#xff0c;偏向锁、轻量级锁&#xff0c;重量级锁 1、偏向锁&#xff1a;原因是大多数时候是不存在锁竞争的&#xff0c;常常是一个线程多次获得同一个锁&#xff0c;因此如果每次都要竞争锁会增大很多没有必要付出的代价…

jstack命令使用

概述 jstack可用于导出java运用程序的线程堆栈。其基本使用语法为&#xff1a; jstack [-l] pid -l 选项用于打印锁的额外信息。使用演示样例 以下这段代码执行之后会出现死锁现象(由于线程1持有lock1。在等待lock2。线程2持有lock2在等待lock1&#xff0c;造成了循环等待。形成…

Python运算符优先级

找了个表格。 参考网址&#xff1a;http://www.runoob.com/python/python-operators.html转载于:https://www.cnblogs.com/Deribs4/p/5203936.html

windows server 2012服务器IIS基本配置

转载于:https://www.cnblogs.com/wuyubing/p/5204175.html

[转]Xcode的重构功能

Xcode提供了以下几个重构功能&#xff1a; Rename Extract Create Superclass Move Up Move Down Encapsulate 在菜单栏中的位置如下图&#xff1a; 在代码区里直接右键也能出现重构的相关菜单&#xff1a; 下面就分别介绍这些重构功能的使用。 Rename&#xff1a;重命名 …