Leetcode 1089. 複寫零
阿新 • • 發佈:2022-05-18
給你一個長度固定的整數陣列 arr,請你將該陣列中出現的每個零都複寫一遍,並將其餘的元素向右平移。
注意:請不要在超過該陣列長度的位置寫入元素。
要求:請對輸入的陣列 就地 進行上述修改,不要從函式返回任何東西。
示例 1:
輸入:[1,0,2,3,0,4,5,0]
輸出:null
解釋:呼叫函式後,輸入的陣列將被修改為:[1,0,0,2,3,0,0,4]
示例 2:
輸入:[1,2,3]
輸出:null
解釋:呼叫函式後,輸入的陣列將被修改為:[1,2,3]
提示:
- 1 <= arr.length <= 10000
- 0 <= arr[i] <= 9
Code:
class Solution { public: void duplicateZeros(vector<int>& arr) { int cnt=arr.size(); for(int i=0;i<arr.size();i++) { if(i==cnt) break; if(arr[i]==0) { // arr.push_back(0); arr.insert(arr.begin()+i,0); arr.pop_back(); i++; } } } };