1.题目详情:
2.示例:
3. 分析:
数组是有序的,所以重复的元素一定会相邻。 就是将不重复的元素移到数组的左侧 ---重新排序 原地删除并不难,但是考虑到删除后元素移动的问题,就涉及到时间复杂度的问题了--所以不删 重新排序 方案:快慢指针(类似指针 java不叫指针) 相邻快慢指针,快的在前面探路,遇到不重复的就给慢的,慢的前进一步 即慢的排序过来的都是不重复的 输出从(0~慢的)就是不重复的 总结:其实就是交换位置而已 快的探路 快的把找到不一样的给慢的排序
4.具体解法:
5.运行测试:
看 前面的就是慢指针排好序的不重复的 慢的从0开始 "慢+1"的长度就是新数组的长度
6.力扣提交: