JS 移動零 陣列 雙指標

2021-09-01 00:23:56 字數 513 閱讀 2433

給定乙個陣列 nums,編寫乙個函式將所有 0 移動到陣列的末尾,同時保持非零元素的相對順序。

示例:輸入: [0,1,0,3,12]

輸出: [1,3,12,0,0]

說明:必須在原陣列上操作,不能拷貝額外的陣列。

儘量減少操作次數。

首先使用迴圈把等於0的刪除,其次當前的指標減1, 然後把0插入到陣列末尾,最後陣列長度減1避免死迴圈。

// 2018/11/15 the 晚上

var movezeroes = function(nums) {

var len=nums.length;

for(var i=0;i21 / 21 個通過測試用例

執行用時:140 ms

也可以使用兩個splice()實現

var movezeroes = function(nums) {

var len=nums.length;

for(var i=0;i21 / 21 個通過測試用例

執行用時:128 ms

leetcode 283 移動零,雙指標解法

題目描述 給定乙個陣列 nums,編寫乙個函式將所有 0 移動到陣列的末尾,同時保持非零元素的相對順序。示例 輸入 0,1,0,3,12 輸出 1,3,12,0,0 說明 必須在原陣列上操作,不能拷貝額外的陣列。儘量減少操作次數。public void movezeroes int nums 思路 ...

零陣列長度的使用

零長度陣列大小是多少?int main 編譯結果 0這玩意有什麼作用呢?看下面的簡單例子 宣告 typedef struct testtest 定義 test demo test malloc sizeof test 10 再看乙個拓展demo include include include typ...

js實現陣列移動零 力扣

給定乙個陣列 nums,編寫乙個函式將所有 0 移動到陣列的末尾,同時保持非零元素的相對順序。示例 輸入 0,1,0,3,12 輸出 1,3,12,0,0 說明 必須在原陣列上操作,不能拷貝額外的陣列。儘量減少操作次數。我們建立兩個指標i和j,第一次遍歷的時候指標i用來記錄當前有多少非0元素。即遍歷...