树类相关题目
检查子树
https://leetcode-cn.com/problems/check-subtree-lcci/
递归比较,以每一个节点为头,比较2树是否相同即可
二叉树的直径
https://leetcode-cn.com/problems/diameter-of-binary-tree/
经过某一结点的最长路径为 左子树高度+右子树高度
遍历每一个树中每一个节点,求得其左右子树高度并计算路径,取最大值作为树的直径
完全二叉树的最后一层的最后一个节点
https://blog.csdn.net/fangjian1204/article/details/39179343
先计算树的高度,由于是完全二叉树,左节点遍历到底得到树高h。
之后进入算法
从根节点开始
若h==2,返回当前节点右,左中第一个非空的。
计算右子树高度,若高h,以右节点为根节点重新开始,否则以左节点为根节点重新开始。并令h-1
之字形打印二叉树
https://leetcode-cn.com/problems/cong-shang-dao-xia-da-yin-er-cha-shu-iii-lcof/submissions/
压栈法循环取出层
因为之字形打印,倒序遍历上一层,并根据需要按照从右到左或从左到右的顺序压节点