LeetCode - 26 解題紀錄
題目: LeetCode - 26. Remove Duplicates from Sorted Array
題目說明
給一個由小到大排序好的陣列,要求刪除陣列中重複的數字,並回傳處理後的陣列的大小。
※ 題目希望使用原本的陣列來達成,不要建立額外的陣列,也就是空間複雜度為 O(1) 的意思。
解題思路
先判斷 nums
是否為空,若為空直接回傳 0。
定義 idx
紀錄目前的 index,由於陣列是排序好的,重複的數字會被排在一起,所以依序遍歷陣列,若碰到與 nums[idx]
不同的數字,則放入 nums[idx + 1]
,同時將 idx
+ 1,最後回傳 idx
+ 1,因為題目要求回傳的是大小。
參考解法
1 | class Solution { |
本部落格所有文章除特別聲明外,均採用 CC BY-NC-SA 4.0 許可協議。轉載請註明來自 Larry's notes!
評論