![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
树
super-04
这个作者很懒,什么都没留下…
展开
-
leetcode 521 二叉搜索树中的众数
这个问题,不考虑空间的话,其实很简单,我们只需要,用中序遍历,得到一个有序的数组,然后遍历一遍,就可以得到这个众数了;但是起始可以不用额外辅助空间,当我们再用中序遍历这棵树的时候。已经依次访问过这些节点值了。原创 2022-09-25 22:39:53 · 682 阅读 · 0 评论 -
leetcode 257. 二叉树的所有路径
思路如下,一条路径肯定是以叶子节点结尾,如果是则结束递归,将现有结果加入到集合中。所以需要在遍历时,判断是否是叶子节点。否则继续左子树,右子树递归。这是个比较简单的递归题。原创 2022-09-25 21:56:50 · 84 阅读 · 0 评论 -
leetcode 101. 对称二叉树
这道题和leetcode 100 相同的树,思路差不多,但是在递归细节上需要有些变化。所以我们在递归比较的时候,一边传入root.left,另一边传入root.right。对称二叉树实际上比较的是一棵树的左子树,和右子树。可以想有两棵树存在,虽然这两棵树都是root。结束条件和相同的树那题是一样的。原创 2022-09-08 19:52:59 · 159 阅读 · 0 评论 -
leetcode 108. 将有序数组转换为二叉搜索树
我们每次从有序数组中取出中间节点,作为根节点,左半边,作为左子树,右半边,作为右子树。因为一个有序数组,构建出来的二叉搜索树,他的深度是最大的,只有右子树的一个斜边。至少要保证每个根节点左右子树节点个数相同。构建完根节点之后再递归构建,左子树,右子树。所以要想得到一个高度平衡的二叉搜索树。原创 2022-09-08 19:23:20 · 92 阅读 · 0 评论 -
leetcode 100 相同的树
如果从根节点就不同可以直接返回false,或者p和q都为null, 这两种不用考虑剩下的。else if p 和 q 都不为空 但是值不相等 , return false。else if p 和 q有一个不为空, return false。如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。if p为空且q为空 满足相同条件 return true。首先考虑根节点,如果根节点相同,然后左子树,右子树。,编写一个函数来检验这两棵树是否相同。给你两棵二叉树的根节点。考虑p q 的几种情况。原创 2022-09-05 15:39:53 · 128 阅读 · 0 评论 -
leetcode 94 二叉树的中序遍历
实际也一样,这时候就要先访问根节点,然后递归左,再递归右。理解中序遍历关键在于左---根---右的顺序,在这个时候访问节点就会满足 左根右的顺序。也就是说递归访问左子树,到null为止。其他的几种遍历,比如前序遍历 根左右。还有一种是非递归遍历。实际是用栈模拟了递归。原创 2022-09-04 12:53:54 · 158 阅读 · 1 评论