摘要:題目描述給定一個數組和一個值,你需要原地移除所有數值等于的元素,返回移除后數組的新長度。不要使用額外的數組空間,你必須在原地修改輸入數組并在使用額外空間的條件下完成。元素的順序可以改變。你不需要考慮數組中超出新長度后面的元素。
題目描述
給定一個數組 nums 和一個值 val,你需要原地移除所有數值等于 val 的元素,返回移除后數組的新長度。
不要使用額外的數組空間,你必須在原地修改輸入數組并在使用 O(1) 額外空間的條件下完成。
元素的順序可以改變。你不需要考慮數組中超出新長度后面的元素。
解題思路本題解題思路與上一篇的刪除有序數組重復元素類似,如下所示:
設定左右指針 i, j,變量 count 用于計數
指針 i 從左向右移動,判斷元素是否等于 val;當于 val 相等時 count--, 并移動指針 j,當于 val 不等時指針 i 繼續向右移動
當指針 j 移動時,判斷元素是否等于 val; 當于 val 相等時 count-- 繼續移動指針 j, 當不等時互換 i, j 元素并繼續移動指針 i
當指針 i,j 交匯時完成退出輪詢
可見如下圖示:
實現public int removeElement(int[] nums, int val) { int i = 0, count = nums.length, j = count; while (true) { while (i < j) { if (nums[i] == val) { count--; break; } else { if (i + 1 == j) { break; } i++; } } while (j > i) { j--; if (j == i) { break; } if (nums[j] == val) { count--; } else { nums[i] = nums[j]; i++; break; } } if (i >= j) { break; } } return count; }
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/73490.html
摘要:題目描述給定一個排序數組,你需要在原地刪除重復出現的元素,使得每個元素只出現一次,返回移除后數組的新長度。給定數組函數應該返回新的長度并且原數組的前兩個元素被修改為。 題目描述 給定一個排序數組,你需要在原地刪除重復出現的元素,使得每個元素只出現一次,返回移除后數組的新長度。 不要使用額外的數組空間,你必須在原地修改輸入數組并在使用 O(1) 額外空間的條件下完成。 給定數組 num...
摘要:題目給定一個排序數組,你需要在原地刪除重復出現的元素,使得每個元素最多出現兩次,返回移除后數組的新長度。示例給定函數應返回新長度并且原數組的前五個元素被修改為。也就是說,不對實參做任何拷貝在函數里修改輸入數組對于調用者是可見的。 題目 給定一個排序數組,你需要在原地刪除重復出現的元素,使得每個元素最多出現兩次,返回移除后數組的新長度。不要使用額外的數組空間,你必須在原地修改輸入數組并在...
摘要:描述給定一個有序數組,你需要原地刪除其中的重復內容,使每個元素只出現一次并返回新的長度。最后慢指針指向的元素及前面所有元素都是不重復的。 描述: 給定一個有序數組,你需要原地刪除其中的重復內容,使每個元素只出現一次,并返回新的長度。不要另外定義一個數組,您必須通過用 O(1) 額外內存原地修改輸入的數組來做到這一點。示例: 給定數組: nums = [1,1,2], 你的函數應該返回新...
摘要:題目描述給定一個排序數組,你需要在原地刪除重復出現的元素,使得每個元素只出現一次,返回移除后數組的新長度。示例給定函數應該返回新的長度并且原數組的前五個元素被修改為。也就是說,不對實參做任何拷貝在函數里修改輸入數組對于調用者是可見的。 題目描述 給定一個排序數組,你需要在原地刪除重復出現的元素,使得每個元素只出現一次,返回移除后數組的新長度。 不要使用額外的數組空間,你必須在原地修改輸...
給定一個排序數組,你需要在原地刪除重復出現的元素,使得每個元素只出現一次,返回移除后數組的新長度。 不要使用額外的數組空間,你必須在原地修改輸入數組并在使用 O(1) 額外空間的條件下完成。 Given a sorted array nums, remove the duplicates in-place such that each element appear only once and re...
閱讀 3308·2021-09-30 09:54
閱讀 3805·2021-09-22 15:01
閱讀 3110·2021-08-27 16:19
閱讀 2578·2019-08-29 18:39
閱讀 2164·2019-08-29 14:09
閱讀 634·2019-08-26 10:23
閱讀 1343·2019-08-23 12:01
閱讀 1873·2019-08-22 13:57