其他类型的vector存储方式
前面我们一直都是介绍的vector用来装int类型的数组,那么既然是容器,就不可能只能装一种东西,我们就举个实例来看看vector怎么装其他的类型的数据:
#include <iostream>
#include <vector>
#include <string>
using namespace std;
void outputValue(vector<string> vec);
int main() {
vector<string> vec;
vec.push_back("hello");
vec.push_back("dear");
vec.push_back("redAnt");
outputValue(vec);
return 0;
}
void outputValue(vector<string> vec) {
for(int i = 0; i < vec.size(); i++){
cout << vec[i] << " " ;
}
cout << endl;
}
此时的存储是这样的
“hello” |
0 |
他们的对应的下标就是0 1 2,所以vec[1] = “dear”;我们也可以通过输出看出来:
而char类型就类似了。
vector排序
其实这只是一种用法,我们导入头文件,利用里面的方法就可以了,具体里面的排序是怎么样的,我们以后在排序算法里讲解。
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
void outputValue(vector<int> vec);
int main() {
vector<int> vec;
for(int i = 0; i <= 9; i++) {
int a;
cin >> a;
vec.push_back(a);
}
cout << "顺序排序" << endl;
sort(vec.begin(), vec.end());
outputValue(vec);
cout << "逆序排序" << endl;
reverse(vec.begin(),vec.end());
outputValue(vec);
return 0;
}
void outputValue(vector<int> vec) {
for(int i = 0; i < vec.size(); i++){
cout << vec[i] << " " ;
}
cout << endl;
}
结果: