sort函数的使用
来源:互联网 发布:人体模型软件 编辑:程序博客网 时间:2024/06/06 12:39
#include <iostream>#include <algorithm>#include <time.h>using namespace std;typedef struct index{int a;int b;}index;bool cmp(index a , index b){if (a.a > b.a ){return true;}elseif ( a.a == b.a ){if (a.b > b.b ){return true ;}}return false ;}int main(){index c[100];srand( time(0) );int i;for (i = 0 ; i < 100 ; ++i ){c[i].a = rand()%10 ;c[i].b = rand()%10 ;}sort( c , c+100 , cmp );for (i = 0 ; i < 100 ; ++i ){cout<<c[i].a <<" "<<c[i].b <<endl;}return 0;}
sort函数介
1.包含在头文件algorithm中,使用的话记得打上 #include <algorithm>
2.函数原型:template <class RandomAccessIterator, class StrictWeakOrdering>
void sort(RandomAccessIterator first, RandomAccessIterator last, StrictWeakOrdering comp);
前两个参数指定了排序的序列,对first到last(不包括last)的元素进行排序,第三个参数指定了如何
判断一个元素是否在另一个元素之前如果不写第三个参数,默认为从小到大排序。(有个小技巧,如
果懒得重写cmp函数,也可以通过逆序输出实现从大到小排序)
3.sort与qsort的区别:
sort是一个改进版的qsort,sort函数优于qsort的一些特点:
1.对大数组采取9项取样,更完全的三路划分算法,更细致的对不同数组大小采用不同方法排序。
2.Sort中的cmp函数参数可以直接是参与比较的引用类型。
3.cmp函数比较时qsort用“-”,而sort用”>”.这也是一个重要的区别。
4.sort函数是c++中标准模板库的的函数,在qsort()上已经进行了优化,根据情况的不同可以采用不同
的算法,所以较快。在同样的元素较多和同样的比较条件下 ,sort()的执行速度都比qsort()要快。
5.sort()是类属函数,可以用于比较任何容器,任何元素,任何条件。
- sort函数的使用
- sort函数的使用
- 排序sort()函数的使用
- c++ sort函数的使用
- c++ sort函数的使用
- matlab sort 函数的使用
- 使用stl sort函数的例子
- Array的sort函数使用总结
- sort函数的使用-silicy 1154
- RArray Sort Find等函数的使用
- STL中sort()函数的使用
- VC中sort()排序函数的使用
- C++ sort函数以及stringstream的使用
- 排序(sort函数的使用)
- sort()函数的简单使用
- C# ArrayList 的Sort函数使用
- algorithm中sort函数的使用
- java中的排序sort()函数的使用
- 六.使用指针时的“陷阱”
- 数据结构和算法(二)——时间复杂度和空间复杂度
- Java注释分类
- 超正点的音乐播放器
- apache日志LogFormat参数说明
- sort函数的使用
- cocos2dx 内存优化
- C#、Asp.net 使用 WebClient Get Post(同步、异步)
- Codeforces Round #257 (Div. 2) B. Jzzhu and Sequences
- CentOS 5.5 vimtutor 乱码的问题
- do while 循环和while循环的区别
- 的燃烧热温热我让他
- 7.19_java学习_多态
- 算法竞赛入门经典(第一版)第三章习题