283. Move Zeroes
来源:互联网 发布:java class命名 编辑:程序博客网 时间:2024/06/03 17:31
Given an array nums
, write a function to move all 0
's to the end of it while maintaining the relative order of the non-zero elements.
For example, given nums = [0, 1, 0, 3, 12]
, after calling your function, nums
should be [1, 3, 12, 0, 0]
.
Note:
- You must do this in-place without making a copy of the array.
- Minimize the total number of operations.
第i个非零元素前面有count个0,那么他的位置就向前移动了count个位置,只要将每个非零元素前面的0的个数计算出来,并且将非零元素向前移动count个位置;最后,从数组的尾部开始,将最后count个元素置为零即可。
class Solution {
public:
void moveZeroes_1(int* nums, int numsSize)
{
int i=0;
int count = 0;
int m =numsSize-1;
while(i<numsSize)
{
if (nums[i]==0)
{
count++;
i++;
}
else
{
nums[i-count] = nums[i];
i++;
}
}
for (int j=count;j>=1;j--)
{
nums[m] = 0;
m--;
}
}
public:
void moveZeroes_1(int* nums, int numsSize)
{
int i=0;
int count = 0;
int m =numsSize-1;
while(i<numsSize)
{
if (nums[i]==0)
{
count++;
i++;
}
else
{
nums[i-count] = nums[i];
i++;
}
}
for (int j=count;j>=1;j--)
{
nums[m] = 0;
m--;
}
}
0 0
- 283.Move Zeroes
- 283. Move Zeroes
- 283. Move Zeroes
- 283. Move Zeroes
- 283. Move Zeroes
- 【LeetCode】283. Move Zeroes
- 283. Move Zeroes
- 283. Move Zeroes
- Leetcode 283. Move Zeroes
- 283. Move Zeroes
- LeetCode #283. Move Zeroes
- 283. Move Zeroes LeetCode
- 283. Move Zeroes
- LeetCode 283. Move Zeroes
- LeetCode 283. Move Zeroes
- 283. Move Zeroes
- 283. Move Zeroes
- LeetCode 283. Move Zeroes
- 类和继承
- Spring HibernateTemplate详解
- usaco2.3 prefix trie树 + dp
- Elasticsearch——查询//过滤详细总结
- 关于NETCAT的学习笔记
- 283. Move Zeroes
- sdutacm-小鑫去爬山
- 一篇比较详细的MySQL的复制原理及配置
- 邻接矩阵表示图的深度优先搜索和广度优先搜索
- Linux系统下安装rz/sz命令及使用说明
- 找出最大序列对
- github学习
- 机器学习3——牛顿方法、指数族、广义线性模型
- ARP协议分析