1. 題目
2.題目分析與思路
3.**
給定陣列 nums = [1,1,2],
函式應該返回新的長度 2, 並且原陣列 nums 的前兩個元素被修改為 1, 2。
你不需要考慮陣列中超出新長度後面的元素。
這道題總的來說非常神奇,也就是說我們不用刪除陣列,其實我們最好不要做的事情就是對正在遍歷的陣列進行或刪除,如果說是空間複雜度需要有限制,那麼我們應該要做的是複製和調換位置。。。 所以我在這裡想刪除陣列就掉到坑里了。那麼我們就要用雙指標,我們已經確定了這個是排序後的陣列了,那麼只要把後面大的數字調換位置就好了。
classsolution:
def removeduplicates(self, nums: list[
int]) -> int
: j = 0
for i in range(1
,len(nums)):
if nums[i] ==nums[j]:
continue
else
: j += 1
nums[j] =nums[i]
return j+1
LeetCode第26題刪除排序陣列中的重複項
題目描述 給定乙個排序陣列,你需要在 原地 刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。不要使用額外的陣列空間,你必須在 原地 修改輸入陣列 並在使用 o 1 額外空間的條件下完成。解題思路 1 題意理解 該陣列是排好序,要求刪除排序陣列中的重複項,可將重複項覆蓋過去。2 邏...
LeetCode刷題筆記第26題
題目 給定乙個排序陣列,你需要在原地刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。不要使用額外的陣列空間,你必須在原地修改輸入陣列並在使用o 1 額外空間的條件下完成。題目分析 做題之前一定要將題目分析的細緻一些,因為有些條件如果一旦不注意就會造成程式結果出現偏差或者執行不通過...
LeetCode26題 刪除排序陣列中的重複項
package cn.wyu.leetcode 給定乙個排序陣列,你需要在 原地 刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。不要使用額外的陣列空間,你必須在 原地 修改輸入陣列 並在使用 o 1 額外空間的條件下完成。示例 1 給定陣列 nums 1,1,2 函式應該返回新...