双指针
liuyang-neu
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
力扣 88.合并两个有序数组
法一:暴力法i < n;i++){法二:倒序双指针 时间复杂度为O(m+n)从右往左地把nums2 合并到nums1 中如numsnums2=[4,5,6]while (p2 >= 0) { // nums2 还有要合并的元素// 填入 nums1[p1]} else {// 填入 nums2[p1]原创 2025-06-09 09:55:36 · 283 阅读 · 0 评论 -
力扣4.寻找两个正序数组的中位数
题解核心思路:通过二分查找的确定分割点使左右两部分元素数量相等。// 确保nums1是较短的数组,以优化二分查找} else {right = m1;// 处理边界情况m1 <= 0?m2 <= 0?return c1;m1 >= n1?m2 >= n2?原创 2025-06-03 16:17:08 · 353 阅读 · 0 评论 -
力扣 88.合并两个有序数组
法一:暴力法i < n;i++){法二:倒序双指针 时间复杂度为O(m+n)从右往左地把nums2 合并到nums1 中如numsnums2=[4,5,6]while (p2 >= 0) { // nums2 还有要合并的元素// 填入 nums1[p1]} else {// 填入 nums2[p1]原创 2025-06-03 16:16:01 · 410 阅读 · 0 评论 -
力扣26. 删除有序数组中的重复项
和27题类似(双指针法)一个指针 i 进行数组遍历,另外一个指针 idx 指向有效数组的最后一个位置。只有当 i 所指向的值和 idx 不一致(不重复),才将 i 的值添加到 idx 的下一位置。//第一个元素不动,从第二个元素开始覆盖i < n;原创 2024-05-28 21:58:37 · 699 阅读 · 0 评论 -
力扣27.移除元素
双指针法先设定变量 idx,指向待插入位置,idx 初始值为 0。然后从题目的「要求/保留逻辑」出发,来决定当遍历到任意元素 i 时,应该做何种决策:1.如果当前元素 i 与移除元素 val 相同,那么跳过该元素。2.如果当前元素 i 与移除元素 val 不同,那么我们将其放到下标 idx 的位置,并让 idx 自增右移。最终得到的 idx 即是答案。i < n;return idx;原创 2024-05-28 21:54:11 · 812 阅读 · 0 评论
分享