- 博客(2)
- 收藏
- 关注
原创 LeetCode刷题记-二叉树篇-遍历
其实拿到这道题,我很快就有了一个思路,既然是轴对称的,那我把这棵树翻转过来,如果还和原来的树一样,那不就是轴对称的了吗,我试图先去翻转这棵树,然后返回的头节点与原来的头节点比较,相同就是轴对称,反之不是。这看似正确,但是我是天真地以为一个头节点就能代表一整棵树了,以为比较头节点就相当于比较一整棵树,显然是不行的。那既然头节点无法代表一整棵树,我们必然要把这棵树从中间切开,依次比较对应的值是否相同嘛,只要搞清楚是谁和谁比较就行了。题目要求的是一个集合,里面再嵌套集合,里面的集合包含了每一层的所有节点值。
2023-03-14 12:47:14 243
原创 LeetCode刷题记-二叉树-二叉搜索树
其实先序遍历也可以搞定,反而会简单,只需要判断到当前节点的值不在范围内,再根据二叉搜索树的性质,左子树小,右子树大,即可以剪掉其某一边的子树,去递归另一边。第一,用一个变量记录答案,第二,用一个变量记录当前节点的上一节点的值,这样我们就可以计算差值,将差值更新到答案上,直至找到最小。例如本题插入节点,我们只需判断下当前节点的值与要插入的值的大小关系,当前节点值大,则插到左边,反之右边,然后递归,遇到空就回溯,然后直接插入就行了。有一说一,这题我思路来的挺快的,只是对于回溯的领悟还有点差距,回溯条件想错了。
2023-03-11 21:59:26 255 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人