摘要:
思路: 直接二分查找即可。 代码: class Solution { public: int searchInsert(vector<int>& nums, int target) { int n = nums.size(); int left=0,right=n-1; int res=n; whi 阅读全文
posted @ 2021-04-25 21:53
Mrsdwang
阅读(34)
评论(0)
推荐(0)
摘要:
思路: 题目中描述公共祖先定义为,p,q的共同且深度最深的祖先。就是最靠近p,q的祖先节点。 那么我们应该判断每个节点的子树是否有p,q,如果一个节点都有p,q那么这个点就是公共祖先。而且我们从底向上遍历,能得到的最深的深度了。 我们 通过这个条件 (left_son&&right_son) || 阅读全文
posted @ 2021-04-25 21:32
Mrsdwang
阅读(35)
评论(0)
推荐(0)
摘要:
思路: 因为是二叉搜索树,那么就是在中序遍历的基础上进行额外的处理即可 那么就有递归和迭代两种方法。 首先递归有原地算法和非原地算法两种。 原地算法需要有一个头节点,我们从root右子树开始处理,那边处理完,头节点就能在树的开头了。 每当一个结点的right指向前一个结点后,pre就要定位在该节点上 阅读全文
posted @ 2021-04-25 17:44
Mrsdwang
阅读(34)
评论(0)
推荐(0)

浙公网安备 33010602011771号