复写零
- 题目描述
- 算法描述
- 编程代码
链接: 复写零
题目描述

算法描述

编程代码
class Solution {
public:
void duplicateZeros(vector<int>& arr) {
int n = arr.size();
int dest = -1,cur = 0;
while(cur < n)
{
if(arr[cur])
{
dest++;
}
else
{
dest+=2;
}
cur++;
if(dest >= n-1)
{
break;
}
}
if(dest == n)
{
dest-=2;
arr[n-1] = 0;
cur--;
}
cur--;
while(cur>=0)
{
if(arr[cur])
{
arr[dest--] = arr[cur--];
}
else
{
arr[dest--] = 0;
arr[dest--] = 0;
--cur;
}
}
}
};







![[保研/考研机试] KY212 二叉树遍历 华中科技大学复试上机题 C++实现](https://img-blog.csdnimg.cn/39a1403c94a349c0b5200197e7bf3965.png)












