题目链接:
https://leetcode.cn/problems/remove-duplicates-from-sorted-array-ii/
视频链接:
https://www.bilibili.com/video/BV18G5UzzE8c/
我的代码:
https://leetcode.cn/problems/remove-duplicates-from-sorted-array-ii/submissions/720686776
- 看到题目的第一想法:
我原本想着用计数的方式,逐个统计每个数字出现次数,超过两次就跳过。然后也想到数组是有序的,重复元素都挨在一起,可以用双指针做。
- 解题过程中遇到的困难:
- 一开始不知道该对比哪个位置的元素,分不清是比较 slow-1 还是 slow-2;
- 边界处理容易出错,数组长度小于2时不需要处理,一开始漏掉特判;
- 容易搞反快慢指针更新顺序,忘记先赋值再移动慢指针,导致数组覆盖错误。
今日收获
- 巩固了滑动窗口/双指针思想,有序数组去重类题目非常适合用快慢指针。
- 慢慢理解了原地数组操作的核心:不新开数组,用覆盖赋值的方式精简数组,节省空间!!
- 昨天忘记打卡了😭😭😭明天补!!