110.平衡二叉树 (优先掌握递归)
文档讲解:代码随想录
视频讲解:后序遍历求高度,高度判断是否平衡 | LeetCode:110.平衡二叉树_哔哩哔哩_bilibili
1. 不知道咋做。
2. 在求二叉树的高度的代码上改,二叉树的高度肯定是大于等于0的,这里利用高度不可能是-1但可以表示当前子树不是平衡二叉树,子树不是平衡二叉树递归回来也不是平衡二叉树。
3. 在求二叉树的高度的代码上改,二叉树的高度肯定是大于等于0的,这里利用高度不可能是-1但可以表示当前子树不是平衡二叉树,子树不是平衡二叉树递归回来也不是平衡二叉树。
4。用了零散时间看,大概用了两天。
257. 二叉树的所有路径 (优先掌握递归)
文档讲解:代码随想录
视频讲解:递归中带着回溯,你感受到了没?| LeetCode:257. 二叉树的所有路径_哔哩哔哩_bilibili
1. 不知道咋做,但知道和遍历顺序有关。
2. 递归进入下一层后要能够回到之前的状态,这样才能够遍历到以某个节点的另一条路径,回藏在递归中。
3. javascript本身就是赋值引用,所以不用单独针对递归进行处理。
4. 用了零散时间,大概用了两天。
404.左叶子之和 (优先掌握递归)
文档讲解:代码随想录
视频讲解:二叉树的题目中,总有一些规则让你找不到北 | LeetCode:404.左叶子之和_哔哩哔哩_bilibili
1. 这个是不是在递归过程中要用if判断。
2. 首先是叶子节点,然后是左叶子节点,所以无法从当前节点进行判断是否是左叶子节点,只能从节点的父节点进行判断,如果当前节点的左孩子不为空,且左孩子的左孩子、右孩子为空,则找到了一个左叶子,右子树可能也有左叶子节点,也要递归,最后将左右的叶子节点相加返回。
3.首先是叶子节点,然后是左叶子节点,所以无法从当前节点进行判断是否是左叶子节点,只能从节点的父节点进行判断,如果当前节点的左孩子不为空,且左孩子的左孩子、右孩子为空,则找到了一个左叶子,右子树可能也有左叶子节点,也要递归,最后将左右的叶子节点相加返回。
4.用了零散时间,大概用了两天。
222.完全二叉树的节点个数(优先掌握递归)
文档讲解:代码随想录
视频讲解:要理解普通二叉树和完全二叉树的区别! | LeetCode:222.完全二叉树节点的数量_哔哩哔哩_bilibili
1. 不知道咋做。
2. 没有完全理解,这个博客拖了太久了,这个题二刷再研究吧,因为可以用后续遍历,这里直接用的普通的后续遍历,遍历到空节点返回0,然后分别递归左右子树计算节点数和再加1得到以当前节点为根节点的数的节点数和然后返回。
3. 没有完全理解,这个博客拖了太久了,这个题二刷再研究吧,因为可以用后续遍历,这里直接用的普通的后续遍历,遍历到空节点返回0,然后分别递归左右子树计算节点数和再加1得到以当前节点为根节点的数的节点数和然后返回。
4. /