《剑指offer》面试题23 从上往下打印二叉树 Java版
2024-09-03 23:56:44
注意层序遍历的时候对每一层的处理方式可能不同,这里把每一层的元素保存进一个List中了,那么就需要记录每一层的数量。
public List<List<Integer>> search(TreeNode root){
List<List<Integer>> result = new ArrayList<List<Integer>>();
Queue<TreeNode> queue = new LinkedList<TreeNode>();
if (root == null) {
return result;
}
queue.offer(root);
while(!queue.isEmpty()){
List<Integer> row = new ArrayList<Integer>();
int size = queue.size();
for(int i=0; i<size; i++){
TreeNode now = queue.poll();
row.add(now.val);
if(now.left != null)queue.offer(now.left);
if(now.right != null)queue.offer(now.right);
}
result.add(row);
}
return result;
}
最新文章
- 76 mkswaP-用于设置交换区
- React Native填坑之旅--与Native通信之iOS篇
- 62.Android之各分辨率定义的图片规格
- JS 函数--Date()函数
- MVC用户登录方法(lamda表达式)
- Android调用相册截取图片遇到的问题
- A Tour of Go Switch evaluation order
- [Thinkbayes]贝叶斯思维读书笔记-1-贝叶斯定理
- 使用LR11录制手机脚本
- js简单固定table表头及css问题分析。
- 扩展方法where方法查询不到数据,不会抛异常,也不是返回的null
- web站点优化之使用tengine搭建静态资源服务器,静态资源合并加载案例剖析
- 新安装的soapui启动时报错及解决方法
- Controller层aop
- Fiddler系列教程1:初识Http协议抓包工具
- ML实践详细经典教程----用例图、顺序图、状态图、类图、包图、协作图
- Intellij IDEA:maven的本地仓库问题
- Tutorial: Getting Started with Spring Security
- Ubuntu修改桌面为Desktop
- mmcm 和pll
热门文章
- iOS弹窗UIAlertAction用法
- 浅谈Java回收对象的标记和对象的二次标记过程_java - JAVA
- SQL结果统计 GROUP BY
- Codeforces Round #287 (Div. 2) E. Breaking Good 路径记录!!!+最短路+堆优化
- lookup-method和replace-method注入
- ArrayList遍历的三种方法
- Hive数据导入Elasticsearch
- phpstorm的下载激活及定制使用和设置
- 课上作业补交 p526/syscalls1
- js 放回上一页