码迷,mamicode.com
首页 > 编程语言 > 详细

283. Move Zeroes(C++)

时间:2016-05-14 18:45:37      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:

283. Move Zeroes

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].

 

题目大意:

给一个数组,将值为0的元素放置到最后,其他元素相对位置不变。

 

解题方法:

排序题,修改插入排序的判断条件就可以了

注意事项:

 

C++代码:

 1 class Solution {
 2 public:
 3     void moveZeroes(vector<int>& nums) //仿插入排序
 4     {
 5         int j,tmp;
 6         for(int p=1;p<nums.size();p++)
 7         {
 8             tmp=nums[p];
 9             for(j=p;j>0&&tmp!=0&&nums[j-1]==0;j--)
10             {
11                 swap(nums[j],nums[j-1]);
12             }
13             nums[j]=tmp;
14         }
15     }
16 };

 

283. Move Zeroes(C++)

标签:

原文地址:http://www.cnblogs.com/19q3/p/5492971.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!