1、删除Vector中重复的数字
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> A;
A.push_back(1);
A.push_back(2);
A.push_back(1);
A.push_back(2);
A.push_back(2);
A.push_back(2);
A.push_back(6);
A.push_back(6);
A.push_back(5);
A.push_back(3);
A.push_back(4);
vector<int>::iterator i = A.begin();
vector<int>::iterator j = i + 1;
int dis = 0;
while (i != A.end()) {
j = i + 1;
while (j != A.end()) {
if (*i==*j) {
dis = j - i;
A.erase(j);
j = i + dis;
}
else {
j++;
}
}
i++;
}
for (vector<int>::iterator i = A.begin(); i != A.end() - 1; ++i) {
for (vector<int>::iterator j = i + 1; j != A.end();++j) {
if (*i == *j) {
j = A.erase(j);
--j;
}
}
}
for (int i = 0; i < A.size(); ++i)
cout << A[i];
cout << endl;
system("pause");
return 0;
}
2、删除Vector中指定的数字
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> A;
A.push_back(1);
A.push_back(2);
A.push_back(1);
A.push_back(2);
A.push_back(2);
A.push_back(2);
A.push_back(6);
A.push_back(6);
A.push_back(5);
A.push_back(3);
A.push_back(4);
int val = 4 || 7;
vector<int>::iterator it;
for(it=A.begin();it!=end();++it){
if(*it == val){
it = A.erase(it);
--it;
}
}
for (int i = 0; i < A.size(); ++i)
cout << A[i];
cout << endl;
system("pause");
return 0;
}