26 27 雙指標問題

2022-06-12 15:15:09 字數 772 閱讀 8052

給定乙個排序陣列,你需要在 原地 刪除重複出現的元素,使得每個元素只出現一次,返回移除後陣列的新長度。

不要使用額外的陣列空間,你必須在 原地 修改輸入陣列 並在使用 o(1) 額外空間的條件下完成。

示例 1:

給定陣列 nums = [1,1,2],

函式應該返回新的長度 2, 並且原陣列 nums 的前兩個元素被修改為 1, 2。

你不需要考慮陣列中超出新長度後面的元素。

解題思路

雙指標中的快慢指標

先做的27題得到雙指標的解法感覺很高效

難點在於快指標的遞進問題

27題的快指標直接for迴圈遞進

26題快指標需要根據慢指標相比來遞進。

最後考慮i在陣列中的索引要比返回長度值少1 故+1

**class solution

else

}return i+1; }}

27.給你乙個陣列 nums 和乙個值 val,你需要 原地 移除所有數值等於 val 的元素,並返回移除後陣列的新長度。

不要使用額外的陣列空間,你必須僅使用 o(1) 額外空間並 原地 修改輸入陣列。

元素的順序可以改變。你不需要考慮陣列中超出新長度後面的元素。

示例 1:

給定 nums = [3,2,2,3], val = 3,

函式應該返回新的長度 2, 並且 nums 中的前兩個元素均為 2。

你不需要考慮陣列中超出新長度後面的元素。

class solution

}return i;}}

雙指標問題

雙指標可用於多種情景之下,用於查詢陣列中滿足條件的數,coding utf 8 查詢三個數加起來等於0 def findthreesum nums,target 0 nums.sort res for left in xrange nums.len if left 0 and nums left n...

雙指標問題

雙指標一般有兩種case 1.快慢指標,一般排序需要使用快慢指標,快慢指標有兩種遊走方式 1.快指標一直往前,不歸位 2.慢指標移動時,快指標歸位。2.收尾指標,一般回文 對稱性判斷需要使用首尾指標 雙指標中,快慢指標問題 1.指標一快一慢,快指標按序遍歷陣列,慢指標記錄有效資料位置。2.當快指標找...

雙指標問題總結

左右指標的常見演算法 雙指標分為兩類,快慢指標和左右指標,前者主要解決鍊錶問題,後者主要解決陣列問題。環問題 public boolean hascycle listnode head listnode fast head listnode slow head while fast null fas...