【LeetCode】283. Move Zeroes

2021/10/07閱讀時間約 1 分鐘
題目要求如下:
Input: nums = [0,1,0,3,12]
Output: [1,3,12,0,0]
把0都搬到後面去,非0的數字移到前面,且不更改原本數字的大小順序。
想法上很單純跑過一次迴圈檢查陣列裡的值,另在外面宣告一個變數作為指標,從陣列內第一個元素爬起。迴圈檢查當前元素不是0,就跟外面指標所指的元素交換值,之後更新指標移到第二個元素,直到走完陣列所有元素。
即最初index在0
找到第一個非0,交換後讓位置在index(=0)的元素存放數字,index增加為1
找到第二個非0,交換後讓位置在index(=1)的元素存放數字,index增加為2
10會員
54內容數
遇到的坑、解過的題、新知識的探索、舊時代的遺毒!? 工作後我發現,文件更新往往跟不上新需求的更迭,犯錯的歷史總是不斷重演。因此,我改變了方式,蒐集從程式上、系統上的每一次異常處理過程,好讓再次遇到相同的問題時能快速應變。此專題就是我的錯題本,期待日後不管在工作上或交流上遇到難題,都能輕鬆地應答:有什麼難的,我都踩過。
留言0
查看全部
發表第一個留言支持創作者!