我是靠谱客的博主 顺利冷风,最近开发中收集的这篇文章主要介绍C++ STL的sort 函数 以及自定义的比较函数,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

    没什么特别擅长的内容,先做个小笔记好了。在编程时,使用C++的标准模板库(STL)能节约工作量,增加代码的可读性,能灵活运用无疑会提高编程的效率,俗话说:Write less, create more ~

 

    然后这篇笔记就简单讨论一下sort函数吧。对于vector,我们使用algorithm头文件中的sort函数来排序元素,如果元素类型是实数、字符串之类的,直接使用sort 函数就可以方便的排序了。使用方法就是:

    #include <vector>

    #include <algorithm>

    ...

    vector<int> numbers;

    ...

    sort(numbers.begin(),numbers.end());

    传入要排序部分头尾的迭代器就ok了,默认的结果是将元素按从小到大的顺序排序。

 

    sort 函数的功能很易于扩展,我们可以给它一个比较函数,让它按我们希望的方式工作。

    如果想要自定义比较函数,就像这样:

    bool less_int(int a,int b){

        return b<a;

    }

    ...

    sort(numbers.begin(),numbers.end(),less_int);

    函数名称随便,合法就可以。传入的参数类型与vector 的元素类型相同。函数的返回值是bool 类型的,如果第一个参数比第二个小就返回true,反之返回 false。上面的例子就是当b小于a时,认为a小于b。所以排序的结果就是将元素按从大到小的顺序排序。

    其他深入的分析我就不做了,这些对应用来说足够了。至于时间复杂度、稳定性之类的,自从数据结构结课之后,我就没关心过了 - -b

 

    

 

转载于:https://www.cnblogs.com/NekoStation/p/stl_and_sort.html

最后

以上就是顺利冷风为你收集整理的C++ STL的sort 函数 以及自定义的比较函数的全部内容,希望文章能够帮你解决C++ STL的sort 函数 以及自定义的比较函数所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部