JavaScript LeetCode 26. Remove Duplicates from Sorted Array
紀錄 LeetCode 26. Remove Duplicates from Sorted Array 解題過程與思路
陣列去重複,其實我看到就想說幹嘛不直接用 Set
處理就好了,可讀性還比較高🤡
不過既然題目這樣出就寫下去吧,整個思考過程大概就是
- N+1 去跟 N 比較
- 如果不同就把 N + 1 = N
- Tick 紀錄往下走
- return Tick + 1
程式碼如下
/**
* @param {number[]} nums
* @return {number}
*/
var removeDuplicates = function (nums) {
let i = 0
for (let j=1;j<nums.length;j++) {
if (nums[j]!==nums[i]) {
nums[i+1]=nums[j]
i++
}
}
return i+1
}
不過可以看到,我這邊是用 j=1
因為從 0 開始跑 j 跟 i 都為 0 自己跟自己比意義
可以省去一個迴圈步驟,所以偷雞了一下😂
只是不知道為什麼同樣的程式碼,每次 runtime 時間都有點不太一樣,不知道他到底的評斷標準是什麼。