LeetCode-283. Move Zeroes

来源:互联网 发布:交割单制作软件 编辑:程序博客网 时间:2024/05/18 01:26

Description:

这里写图片描述

Note:

这里写图片描述

Solution (C++):

这里写图片描述

算法分析:

这道题不难,意思好懂。其实我觉得最不好处理的地方就是一般都能想到新建一个数组,并初始化为全元素0,然后将原数组中不为0的数存入新数组中,那么新数组剩下的元素由于没有改变,自然就为0.那么新数组就是原数组排序后的结果了。那么题目要求只能在原数组中处理,我就会有点乱了手脚。还好后来想到了,其实创不创建新数组都无所谓。核心思路都一样,还是要多多练习呀。

程序分析:

程序中唯一要说的就是,第二个循环中由于最开始已经:

int j=0;

而且,第一次循环中,j的值是一直+1的,实际上,j的值就表示了原数组中非0的元素的个数。后面的第二次循环就:

for(;j<nums.size();j++){    /*代码*/}
原创粉丝点击