leetcode笔记
个人刷题总结
au--lx
这个作者很懒,什么都没留下…
展开
-
数组专题---删除重复项、删除指定元素
27. 移除元素 双指针法(前后指针) vector容器是顺序存储,所以不能单独删除数组中某个元素,只能覆盖! 因为要求“原地”删除,所以想要用“双指针法” 自己的双指针思路是: 定义两个指针,分别指向数组的头尾 first负责定位到val的位置,last负责定位到非val的位置,然后把非val和val交换,最终使所有val都聚在数组后面,再调用erase删除所有val 两个指针指向的情况如下 *first *last operation =val =val last– =v原创 2021-06-01 17:40:00 · 212 阅读 · 0 评论 -
二分查找专题
34. 在排序数组中查找元素的第一个和最后一个位置 本题其实就是用寻找左右边界的二分搜索,但做题中出现了几个问题 没有分析数组为空的情况 //目标值大于或小于所有元素值,数组无元素 //错误写法,先检查的是target>nums[right-1],如果right=0,则会出现非法访问,所以应该先检查len==0 if(target>nums[right-1]||target<nums[0]||len==0) return result; //正确写法 if原创 2021-06-01 16:46:30 · 37 阅读 · 0 评论