#include <iostream> #include <algorithm> #include <numeric> #include <vector> using namespace std; bool Comp( int &a, int &b) { return a < b; } int main() { //vector 容器的初始化 vector<int> v1; vector<double> v2(10); vector<double> v3( 12, 8.6); //fill用以填充数据 fill( v2.begin(), v2.end(), 100); //插入数据 v1.push_back( 1); v1.push_back( 2); v1.push_back( 3); //中间插入数据 v1.insert( v1.begin(), 8); v1.insert( v1.begin() + 2, 9); v1.insert( v1.end(), 10); vector<int> v4(v1); //访问数据,可以用下标的方式访问,一般采用迭代器 for ( size_t i = 0; i < v1.size(); i++) { cout << v1[i] << "\t"; } cout << endl; for ( vector<int>::iterator it = v1.begin(); it != v1.end(); it++) { cout << *it << "\t"; } //元素的删除 //erase()方法可以删除vector中迭代器所制定的一个元素,或一段元素 //clear()方法则一次性删除vector中的所有元素 v1.erase( v1.begin() + 2); v1.erase( v1.begin() + 1, v1.begin() + 3); v1.clear(); v1.push_back(100); //插入迭代器的用法 back_inserter(v1) copy(v4.begin(), v4.end(), back_inserter(v1)); //获取容器的大小 cout << " v1.size() = " << v1.size() << endl; //置逆 , reverse函数,于头文件algorithm reverse( v1.begin(), v1.end()); //排序 , sort函数, 于头文件algorithm, 可用自定义的比较函数 sort( v1.begin(), v1.end()); sort( v1.begin(), v1.end(), Comp); //统计数字的和 accumulate , 于头文件numeric int sum = accumulate( v1.begin(), v1.end(), 0); //使用find函数 vector<int>::iterator it_find; it_find = find( v1.begin(), v1.end(), 5); if ( it_find == v1.end() ) { cout << "No Find" << endl; } return 0; }
vector的用法及相关算法
最新推荐文章于 2021-08-18 22:24:55 发布