夜渡寒鸦呀
夜渡寒鸦呀
全部文章
分类
题解(57)
归档
标签
去牛客网
登录
/
注册
夜渡寒鸦呀的博客
全部文章
(共58篇)
题解 | #判断是不是平衡二叉树#
C语言判断平衡二叉树 思路:明显的递归问题,平衡二叉树左右子树的差值不大于1,因此应该递归所有的节点,判断节点的左右子树深度差值 重点:重点是递归函数的返回值,返回节点的最大深度,同时判断左右子树哪个最深,返回最深的值 递归出口:叶子节点作为出口,出口可以设置为两个,一个是叶子节点(针对的是没有左...
C
2022-05-06
1
313
题解 | #二叉搜索树与双向链表#
C语言解题思路 思路:二叉树一般想到递归解决问题,分左右子树考虑,从二叉树到链表的过程可以看到,以根节点为中心,左子树看作一个整体,左子树的后继节点为根节点,右子树的前驱节点为根节点,使用递归解决问题 递归出口:二叉树最小子树分两种情况,一种是有两个叶子,一种是只有一个叶子。因此需要给两个出口,对...
C
2022-05-05
4
389
题解 | #二叉树中和为某一值的路径(二)#
思路:递归+回溯;二叉树和为某一值的所有路径,使用这个target减去当前节点的值,然后比较递归左右孩子,递归出口设置为左右孩子均为空,然后判断此时是否和target的值相等。否则回溯。 重点:重点是使用数组+静态变量 记录递归的路径,当满足条件时,将路径拷贝到返回结果中。 返回值:容易迷惑的还是返...
C
2022-04-28
0
345
题解 | #二叉树中和为某一值的路径(一)#
C语言解法 解法思路:这道题使用层序遍历的方法,构造队列。在每一层进入队列后,创建一个同样的节点和队列,当节点左右子树都为空,说明叶子节点,输出当前的值。 * struct TreeNode { * int val; * struct TreeNode *left; * struct Tre...
C
2022-04-15
2
263
题解 | #二叉搜索树的后序遍历序列#
二叉搜索树后序遍历序列 C语言解题思路 思路:例如数组:[1,2,7,4,6,5,3] 搜索树,意思是任意节点,左孩子均小于节点值,右孩子均大于节点值 根据后序遍历,即后根遍历,很容易确定数组最后一个为根节点。此时根据根节点将数组分为左子树,右子树两部分,需要保证左右子树均为二叉搜索树。典型的递归思...
C
2022-04-13
3
399
题解 | #从上往下打印二叉树#
c语言实现层序遍历 使用队列实现,将每一层放入队列,然后设置队列头和队列尾 * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; * * C语言声明定义全局变量请加上...
C
2022-03-14
1
378
题解 | #二叉搜索树的第k个节点#
简单中序遍历 中序遍历将二叉搜索树从下到大存储到数组中,定义全局栈,返回第k个数组值 * struct TreeNode { * int val; * struct TreeNode *left; * struct TreeNode *right; * }; * * C语言声明定义全局...
C
2022-03-09
0
328
题解 | #按之字形顺序打印二叉树#
C语言解题思路 本质上还是层序遍历输出二叉树 在层序遍历二叉树中,构建队列顺序存储每一层 设置深度标识k,奇偶深度存储的方向相反。 重点来了!返回值一直没有搞懂,从代码中可以看要返回一个int **类型的指针,也就是按照每一层进行返回。需要使用malloc初始化一个最多1500层的int*类型的...
C
2022-03-09
3
578
首页
上一页
1
2
3
4
5
6
下一页
末页