ARTS (第11周)
这个礼拜事情真多。
发觉劳逸结合很重要,而最好的休息方式就是放空大脑,什么都不要去想。
本周:
二叉树的按层次遍历
(ps:后来了解到这就是广度优先搜索算法)
Algorithm 算法
二叉树的层次遍历
https://leetcode-cn.com/problems/binary-tree-level-order-traversal/
给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。1
2
3
4
5
6
7
8
9
10
11
12
13
14
15例如:
给定二叉树: [3,9,20,null,null,15,7],
3
/ \
9 20
/ \
15 7
返回其层次遍历结果:
[
[3],
[9,20],
[15,7]
]
思路是就是创建一个辅助队列 (我这里用LinkedList)保存每一层节点的数据(第一次循环处理第一层第二次第二层,以此类推),当每个数据处理完了,就丢进当前数据里的子节点数据。
因为每次处理之前size的值从一开始固定了 所以再往队列里丢入子节点不会做多余的处理。
1 | public static List<List<Integer>> levelOrder(TreeNode root) { |
Review 英文文章
https://hadoop.apache.org/docs/r3.2.0/
Apache Hadoop 3.2.0的更新以及介绍。
Tip 技巧
极客时间的专栏《数据结构与算法之美》
本周学习了该专栏中的27篇
学习了用树来求解递归的时间复杂度
Share 分享
Google 都在用的 6 个休息小技巧,让你工作效率翻倍