剑指offer 第八天
JZ59 按之字形顺序打印二叉树
题目描述:
请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。
解法思路:
这道题其实是昨天最后一道题JZ60
的升级版,其实也就是层次遍历二叉树(BFS)。层次遍历思想可以参见上一道题,只是此题需要结合二叉树的深度depth
进行解题。在每次需要打印的地方,当深度depth
对2取余,为0则从左到右打印,为1则反转打印。
1 |
|
代码测试:
1 |
|
JZ58 对称的二叉树
题目描述:
请实现一个函数,用来判断一棵二叉树是不是对称的。注意,如果一个二叉树同此二叉树的镜像是同样的,定义其为对称的。
解法思路:
1 |
|
代码测试:
1 |
|
JZ38 二叉树的下一个结点
题目描述:
给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。
解法思路:
1 |
|
代码测试:
1 |
|
JZ38 平衡二叉树
题目描述:
输入一棵二叉树,判断该二叉树是否是平衡二叉树。
在这里,我们只需要考虑其平衡性,不需要考虑其是不是排序二叉树
解法思路:
1 |
|
代码测试:
1 |
|
剑指offer 第八天
https://crisescode.github.io/blog/2020/07/20/剑指offer-第八天/