删除对象中所有重复的元素,代码已完成,但还有个疑问
#include<iostream>
using namespace std;
#include<vector>
template<typename T>
void removeDup(vector<T>& v)
{
int j=1; //程序这里1改为0就能成功;我觉得删除后的向量里至少会包含一个数据的嘛,所以赋为1;为什么1不行0可以
int n=v.size();
int a;
for(int i=1;i<n;i++){
for(a=0;a<j;a++){
if(v[i]==v[a])
{
break;
}
}
if(a==j)
{
j++;
v[j]=v[i];
}
}
v.resize(j);
for(i=0;i<=j;i++)
cout<<v[i]<<" ";
cout<<endl;
}
int main()
{
vector<int> v(9);
v[0]=1;
v[1]=7;
v[2]=2;
v[3]=7;
v[4]=9;
v[5]=1;
v[6]=2;
v[7]=8;
v[8]=9;
removeDup(v);
return 0;
}