給定乙個排序陣列,在原陣列中刪除重複出現的數字,使得每個元素只出現一次,並且返回新的陣列的長度。
不要使用額外的陣列空間,必須在原地沒有額外空間的條件下完成。
樣例給出陣列a =[1,1,2],你的函式應該返回長度2,此時a=[1,2]。
這種簡單難度的題要訓練到第一時間想到解法,先上乙個醜的不行的解法
1int removeduplicates(vector &nums)
6 vector::iterator it=nums.begin();
7 vector::iterator temp;
8 it++;
9int mark=nums[0
];10
while(it!=nums.end())
15else19}
20return
nums.size();
21 }
兩個指標一前一後,如果後和前一樣,刪除後,並將後向後移一位。
至少上面這種要第乙個想到,下面貼乙個美觀的
1int removeduplicates(vector &nums)
9}
10 nums.resize(count+1
);
11return count+1
; 12 }
count+1內的陣列是結果,將》=count的數覆蓋進count,然後刪除多餘的。
100 刪除排序陣列中的重複數字
容易 刪除排序陣列中的重複數字 檢視執行結果 32 通過 給定乙個排序陣列,在原陣列中刪除重複出現的數字,使得每個元素只出現一次,並且返回新的陣列的長度。不要使用額外的陣列空間,必須在原地沒有額外空間的條件下完成。您在真實的面試中是否遇到過這個題?yes 樣例給出陣列a 1,1,2 你的函式應該返回...
100 刪除排序陣列中的重複數字
5.2 題目要求是不許使用額外的空間。所以這樣寫就是錯誤的了 nums arrays.copyof nums,nums.length 1 這是建立了新的陣列。直接標記length 的長度就可以了。這個題是不需要重新維護陣列的。public class solution int i 0 for i 0...
100 刪除排序陣列中的重複數字
原題 給定乙個排序陣列,在原陣列中刪除重複出現的數字,使得每個元素只出現一次,並且返回新的陣列的長度。不要使用額外的陣列空間,必須在原地沒有額外空間的條件下完成。您在真實的面試中是否遇到過這個題?yes樣例給出陣列a 1,1,2 你的函式應該返回長度2,此時a 1,2 標籤 兩根指標 陣列臉書 bl...