您的位置:首页 > 其它

283-e-Move Zeroes

2015-10-06 21:34 260 查看
将0都移动到数组末端。双指针一个个比较移动想了好久都不对,查了下别人的思路,可以把非0位都前移,只要记录下有多少个0那么将数组之后的数全部置0就行。代码很简单,所以说算法题还真是思路不对搞死都写不出来,需要及时换个思路也许代码就能很简单。

如下:

void moveZeroes(int* nums, int numsSize) {
int ip = 0, icur = 0;
for (; icur < numsSize; icur++) {
if (nums[icur] != 0) {
nums[ip] = nums[icur];
ip++;
}
}
while (ip < numsSize) {
nums[ip] = 0;
ip++;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: