@requires_authorization
@author johnsondu
@create_time 2015.7.22 18:58
@url [remove dublicates from sorted array](https://leetcode.com/problems/remove-duplicates-from-sorted-array/)
/**
* @description: 从有序数组中剔除元素,最多常量额外空间,设置标兵依次比较
* @time_complexity: O(n)
* @space_complexity: O(1)
*/
class Solution {
public:
int removeDuplicates(vector<int>& nums) {
const int len = nums.size();
if(len < 2) return len;
int first = nums[0];
int idx = 1;
for(int i = 1; i < len; i ++) {
if(nums[i] == first) continue;
else {
first = nums[i];
nums[idx] = first;
idx ++;
}
}
return idx;
}
};
【leetcode】 26. Remove Duplicates from Sorted Array
最新推荐文章于 2024-12-06 07:02:43 发布
本文介绍了一种在常数级额外空间复杂度下,移除有序数组中重复元素的方法。通过设置一个标兵来逐个比较数组中的元素,并在发现不同元素时进行更新。此算法的时间复杂度为O(n),空间复杂度为O(1)。
1080

被折叠的 条评论
为什么被折叠?



