vector的排序函数

C/C++中自带有排序函数sort,位于头文件stdlib.h中,可以实现快速排序(此处说的快速是指编写程序快速,并非排序算法中的快速排序),具体用法为:
sort(a,a+len(a));//将数组a按照默认升序排列
sort(a,a+len(a),cmp);//将数组a按照cmp函数指定的规则排列,例如如下的为降序规则

bool cmp(int para1,int para2)
{
    return a>b;
}

C/C++中定义了vector容器,位于头文件vector中,这是一种类似链表的结构,可以实现动态增长和删除,简单用法如下。
几种vector声明:

vectorvec1; //定义空的vector
vectorvec2(10); //产生大小为10的vector
vectorvec3(10,-1); //产生大小为10,并且每个元素都是-1的vector
vectorvec4(v3); //用一个vector产生一个vecotr
尾部插入元素: vec.push_back(a);
尾部删除元素: vec.pop_back(a);
插入元素: vec.insert(vec.begin()+i,a);在第i+1个元素前面插入a;
删除元素: vec.erase(vec.begin()+2);删除第3个元素
vec.erase(vec.begin()+i,vec.end()+j);删除区间[i,j-1];区间从0开始
向量大小: vec.size();
清空: vec.clear();
实用迭代器访问元素:
vector::iterator ita; //声明一个迭代器
int i=0;
for(ita=v1.begin(), i=0;ita != v1.end();i++,ita++){}//v1.begin()指向v1的
版权声明:本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权
文章名称:《vector的排序函数》
文章链接:https://zhuji.vsping.com/4475.html
本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。