Lintcode 刪除排序陣列中的重複數字

2021-09-23 14:13:17 字數 1018 閱讀 6955

給你乙個排序陣列,刪除其中的重複元素,使得每個數字最多出現兩次,返回新的陣列的長度。

如果乙個數字出現超過2次,則這個數字最後保留兩個。

樣例 1:

輸入:

輸出: 0

樣例 2:

輸入: [1,1,1,2,2,3]

輸出: 5

樣例解釋:

長度為 5, 陣列為:[1,1,2,2,3]

python:

class solution:

"""@param: nums: an ineger array

@return: an integer

"""def removeduplicates(self, nums):

# write your code here

if len(nums) <= 2:

return len(nums)

index = 1

samenum = 1

for i in range(1,len(nums)):

if nums[i] == nums[i-1]:

samenum+=1

else:

samenum = 1

if samenum <= 2:

nums[index] = nums[i]

index += 1

nums = nums[:index]

return len(nums)

c++:

class solution 

int samenum = 1;

int index = 1;

for (int i = 1; i < nums.size(); i++) else

if(samenum <= 2)

}nums.resize(index);

return index;

}};

lintcode 刪除排序陣列中的重複數字

給定乙個排序陣列,在原陣列中刪除重複出現的數字,使得每個元素只出現一次,並且返回新的陣列的長度。不要使用額外的陣列空間,必須在原地沒有額外空間的條件下完成。給出陣列a 1,1,2 你的函式應該返回長度2,此時a 1,2 先說我的思路,刪除重複的元素即可,使用vector的迭代器iterator 12...

lintcode 刪除排序陣列中的重複數字

給定乙個排序陣列,在原陣列中刪除重複出現的數字,使得每個元素只出現一次,並且返回新的陣列的長度。不要使用額外的陣列空間,必須在原地沒有額外空間的條件下完成。給出陣列a 1,1,2 你的函式應該返回長度2,此時a 1,2 先說我的思路,刪除重複的元素即可,使用vector的迭代器iterator 12...

LintCode(100)刪除排序陣列中的重複數字

給定乙個排序陣列,在原陣列中刪除重複出現的數字,使得每個元素只出現一次,並且返回新的陣列的長度。不要使用額外的陣列空間,必須在原地沒有額外空間的條件下完成。您在真實的面試中是否遇到過這個題?yes 樣例 給出陣列a 1,1,2 你的函式應該返回長度2,此時a 1,2 對排序陣列去重,要求空間複雜度為...