三道题目 需要注意的点总结
1. 设置开头结尾两个指针 left = 0 ; right = nums.size();
2.以前后指针相遇为条件进行loop
3.mid位置为left + ((right - left)/2)用来避免Leak
4.把vec的mid位置的值和Target相比,如果大于Target值则代表范围可以缩小到前半段
所以可以把右指针更新到mid位置
如果小于Target则代表范围可以缩小到前半段,所以把左指针更新到mid位置
5.要去分析【】和【)的区别,对于【】left = right有意义 所以要right = mid -1或left = mid + 1;
但如果是【)的情况左边就需要是left=mid 但右边就要是right = mid - 1
【】对应left <= right , [)对应left < right
需要注意的点是 slow指针的位置恰好就是当前数组填满的部分 也就是长度 可以直接返回
1.获取nums长度
2.新建一个vector去存result
比较两端哪个值更大 比较出后把值倒序放入result中 ,当k=0时代表所有位置都填满了