使用vector.size()時,在for迴圈中要寫i不要寫i。因為當vector的size為0時,size()函式返回值是無符號整型,這時vec.size()-1是乙個正數,會導致*vec[i]*訪問越界。
##題解
首先考慮了暴力解法,兩個迴圈尋找相等的元素,找到後將其就地改為-1,記錄下個數。再一次迴圈把不是-11的元素(隨意值)放在陣列的末尾。(此處預設了輸入元素中不含有-11)。
#include "iostream"
#include "vector"
class solution
int removeduplicates(vector& nums)
return i+1;
}};
刪除陣列中的重複項 leetcode
給定乙個排序陣列,你需要在原地刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。不要使用額外的陣列空間,你必須在原地修改輸入陣列並在使用 o 1 額外空間的條件下完成。示例 1 給定陣列 nums 1,1,2 函式應該返回新的長度 2,並且原陣列 nums 的前兩個元素被修改為 1...
leetcode刪除排序陣列的重複項
是題目描述 最開始想到的是使用雙重for迴圈 def removeduplicates nums type nums list int rtype int for i in range len nums 1 first nums i for j in range i 1,len nums if nu...
LeetCode 從排序陣列中刪除重複項
給定乙個有序陣列,你需要原地 刪除其中的重複內容,使每個元素只出現一次,並返回新的長度。不要另外定義乙個陣列,您必須通過用 o 1 額外記憶體原地修改輸入的陣列來做到這一點。示例 給定陣列 nums 1,1,2 你的函式應該返回新長度 2,並且原陣列nums的前兩個元素必須是1和2 不需要理會新的陣...