c++排序算法
2015-11-21 18:01
337 查看
排序算法:就是对容器元素进行排序的算法。
sort(first,last)
对first和last的范围内的数据进行排序
对frist和last范围内数据进行排序,但只取first和middle范围内排好的数据,其余数据不变
合并两个容器指定范围的元素并保存到第三个容器中
#include<iostream>
#include<vector>
sort(first,last)
对first和last的范围内的数据进行排序
#include<iostream> #include<vector> #include<algorithm> using namespace std; void main() { vector<int>a; a.push_back (4); a.push_back (7); a.push_back (2); a.push_back (9); a.push_back (5); a.push_back (1); for(int i=0;i<a.size();i++) { cout<<a[i]<<" "; } cout<<endl; sort(a.begin()+2,a.end() ); //sort for(int j=0;j<a.size();j++) { cout<<a[j]<<" "; } system("pause"); }partial_sort(first,middle,last)
对frist和last范围内数据进行排序,但只取first和middle范围内排好的数据,其余数据不变
#include<iostream> #include<vector> #include<algorithm> using namespace std; void main() { vector<int>a; a.push_back (5); a.push_back (2); a.push_back (52); a.push_back (9); a.push_back (4); a.push_back (3); a.push_back (43); a.push_back (7); for(int i=0;i<a.size ();i++) { cout<<a[i]<<" "; } partial_sort(a.begin(),a.begin()+3,a.end() ); //partial sort cout<<endl; for(int j=0;j<a.size ();j++) { cout<<a[j]<<" "; } cout<<endl; system("pause"); }merge(first1,last1,first2,last2,result)
合并两个容器指定范围的元素并保存到第三个容器中
#include<iostream>
#include<vector>
#include<iostream> #include<vector> #include<algorithm> using namespace std; void main() { vector<int>a; vector<int>b; a.push_back (4); a.push_back (7); a.push_back (43); a.push_back (72); b.push_back (9); b.push_back (5); b.push_back (83); b.push_back (24); for(int i=0;i<a.size();i++) { cout<<a[i]<<" "; } cout<<endl; for(int j=0;j<b.size();j++) { cout<<b[j]<<" "; } cout<<endl; sort(a.begin (),a.end () ); sort(b.begin (),b.end () ); int size=a.size()+b.size(); vector<int>c(size); vector<int>::iterator p; merge(a.begin(),a.end(),b.begin(),b.end(),c.begin() ); //merge container for(p=c.begin();p!=c.end();p++) { cout<<*p<<" "; } cout<<endl; system("pause"); }
相关文章推荐
- c语言贪吃蛇
- c语言:输入一个数,从高位向低位输出,如:输入12345,输出1 2 3 4 5
- C语言王国探秘一
- 【C语言】 实现strncpy,strncat,strncmp
- C语言模拟实现memset.memcmp函数
- c语言:给十个整数比较大小
- c语言:4种方法;交换两个整数的位置(包括引入第三方变量和不引入第三方变量)
- c语言:2种方法;求两个整数之中的较大者
- C语言实验——单词统计
- 浅谈C语言中如何取随机数
- C语言:求两个整数之和
- 模拟实现C语言strncpy.strncat.strncmp函数
- C语言:在屏幕上输出信息
- C++学习笔记26——泛型算法之容器元素排序(sort unique)
- C语言读取文件的内容
- C++ 11 auto & decltype
- c++任意数字转换为字符串
- c++11线程管理,RAII方式等待异常环境下线程结束
- C语言简单实现接口
- 002--VS C++ 获取鼠标坐标并显示在窗口上