leetcode 283 Movezeros
2016-04-20 16:02
323 查看
实现将数组中的0元素移动到末尾
我的思路是扫描一遍数组,元素为0则计数加一,不为0则按顺序复制给新数组。完整c++代码如下:
#include <iostream>
#include<vector>
using namespace std;
void moveZeroes(vector<int>& nums) {
int count,i,j,p;
count=0;
j=0;
int len;
len=nums.size();
for(i=0;i<len;i++)
{
if(nums[i]==0)
count++;
else
{
nums[j]=nums[i];
j++;
}
}
for(p=len-1;p>=j;p--)
{
nums[p]=0;
}
}
int main()
{
int t;
vector<int> v;
//vector<int> a;
v.push_back(0);
v.push_back(1);
v.push_back(3);
v.push_back(0);
v.push_back(12);
t=v.size();
moveZeroes(v);
for(int i=0;i<t;i++)
{
cout<<v[i]<<endl;
}
}
我的思路是扫描一遍数组,元素为0则计数加一,不为0则按顺序复制给新数组。完整c++代码如下:
#include <iostream>
#include<vector>
using namespace std;
void moveZeroes(vector<int>& nums) {
int count,i,j,p;
count=0;
j=0;
int len;
len=nums.size();
for(i=0;i<len;i++)
{
if(nums[i]==0)
count++;
else
{
nums[j]=nums[i];
j++;
}
}
for(p=len-1;p>=j;p--)
{
nums[p]=0;
}
}
int main()
{
int t;
vector<int> v;
//vector<int> a;
v.push_back(0);
v.push_back(1);
v.push_back(3);
v.push_back(0);
v.push_back(12);
t=v.size();
moveZeroes(v);
for(int i=0;i<t;i++)
{
cout<<v[i]<<endl;
}
}
相关文章推荐
- 第五届ACM大学生程序设计竞赛:Full Binary Tree
- github使用笔记-- GitHub Desktop 下载、安装、使用
- Zeppelin 安装部署实验
- 继承时的构造函数的的原则
- AJAX跨域请求PHP接口
- java内存布局图
- iOS 将原点移动到navigationBar下面(或UIScrollView和 cell加载子视图偏移64问题)
- js监听输入框值的即时变化onpropertychange、oninput
- 详解Python命令行解析工具Argparse
- RMAN异机恢复
- Android 常用布局及基本UI控件
- ActiveMQ实战之 Topic发布订阅消息
- JNI - Exception Handling
- Android插件化基础
- Android之"AES"加密解密
- 漏洞原理分析
- 腾讯后台研发暑期实习offer经历
- [Asp.net Mvc]通过UrlHelper扩展实现js,css修改后重新加载
- 帧布局,表格布局
- iOS应用程序内打开指定qq聊天、给某人打电话