问题:给定一个数组,把其中所有的零元素移动数组的末尾,其它非零元素的位置关系不变
想法:对于这个问题,是一个数组操作,对于数组操作,c++中提供了fill和remove函数可以使用,很方便的解决这个问题
fill(start,end,value):表示从start到end位置的元素全部置为元素value,无返回值
remove(start,end,value):表示从start到end位置的元素中删掉为value的所有元素,返回指向最后一个未被删除元素之后位置的迭代器。及经过remove函数后,从start到返回位置前的所有元素的值均不为给定值value
class Solution {
public:
void moveZeroes(vector<int>& nums) {
fill(remove(nums.begin(), nums.end(),0),nums.end(),0);
}
};