leetcode演算法練習 移除元素

2021-10-03 10:51:20 字數 838 閱讀 9521

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

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

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

示例1:

給定 nums =[3

,2,2

,3], val =3,

函式應該返回新的長度 2

, 並且 nums 中的前兩個元素均為 2。

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

示例2:

給定 nums =[0

,1,2

,2,3

,0,4

,2], val =2,

函式應該返回新的長度 5

, 並且 nums 中的前五個元素為 0,1

,3,0

,4。注意這五個元素可為任意順序。

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

雙指標,指標k記錄要刪除的值(val)以外的數;指標i遍歷陣列,遇到與val相等的數就跳過,遇到與val不相等的數就賦值給指標k處的元素,並將k向後移一位,指標i遍歷陣列後,返回的k就是刪除val以後的元素個數。

class

solution

}return k;}}

;

演算法練習 移除元素

題目 給定乙個陣列 nums 和乙個值 val,你需要原地移除所有數值等於 val 的元素,返回移除後陣列的新長度。不要使用額外的陣列空間,你必須在原地修改輸入陣列並在使用 o 1 額外空間的條件下完成。元素的順序可以改變。你不需要考慮陣列中超出新長度後面的元素。示例 給定 nums 3,2,2,3...

演算法練習 移除元素

給定乙個陣列 nums 和乙個值 val,你需要原地移除所有數值等於 val 的元素,返回移除後陣列的新長度。不要使用額外的陣列空間,你必須在原地修改輸入陣列並在使用 o 1 額外空間的條件下完成。元素的順序可以改變。你不需要考慮陣列中超出新長度後面的元素。示例 1 給定 nums 3,2,2,3 ...

LeetCode 刻意練習03 移除元素

題目 引數列表給定乙個陣列 nums 和乙個值 val,你需要原地移除所有數值等於 val 的元素,返回值 移除後陣列的新長度。不要使用額外的陣列空間,你必須在原地修改輸入陣列並在使用 o 1 額外空間的條件下完成。思路 遍歷陣列,如果遇到不為val的值則將其賦值給陣列第i元素,並且i 否則繼續遍歷...