题目1:删除排序数组中的重复数字

#include "stdafx.h"
#include<iostream>
using namespace std;
#include<vector>

 


int del(vector<int>& nums){
int n=nums.size();
if(n==0)
return 0;
if(n==1)
return 1;
int m=0;
for(int i=1;i<n;i++){
if(nums[m]!=nums[i]){
nums[++m]=nums[i];
}
}
nums.resize(m+1);
return nums.size();
}

 


int _tmain(int argc, _TCHAR* argv[])
{

vector<int>nums;
int a[]={1,2,3,3,4,4,5,5,5,6,6,6,6,7,8,8};
for(int i=0;i<16;i++){
nums.push_back(a[i]);
}
cout<<"**************************"<<endl;
cout<<"output new array length:";
int p=del(nums);
cout<<p<<endl;
cout<<"output new array:";
for(int i=0;i<nums.size();i++)
cout<<nums[i]<<" ";
}

 

posted @ 2017-03-07 22:08  RealQ  阅读(285)  评论(0编辑  收藏  举报