###### tags: `LeetCode` `Medium` # LeetCode #26 [Remove Duplicates from Sorted Array](https://leetcode.com/problems/remove-duplicates-from-sorted-array) ### (Medium) 給你一個有序數組 nums ,請你 原地 刪除重複出現的元素,使每個元素 只出現一次 ,返回刪除後數組的新長度。 不要使用額外的數組空間,你必須在 原地 修改輸入數組 並在使用 O(1) 額外空間的條件下完成。 --- 設一暫存變數tmp儲存nums[i], count為計數器, 若nums[i+1]!=tmp, 則在nums[count++]存入nums[i]的值, 並且更新tmp為nums[i+1], 最後回傳count。 --- ``` class Solution { public: int removeDuplicates(vector<int>& nums) { if(nums.size()){ int cnt=0; int tmp; for(int i=0;i<nums.size();i++){ if(nums[i]!=tmp){ tmp=nums[i]; nums[cnt++]=nums[i]; } } return cnt; } return 0; } }; ```