• sort排序


    #include <algorithm> 
    void sort( iterator start, iterator end );
    void sort( iterator start, iterator end, StrictWeakOrdering cmp );

    第一个只需要传递你要排序的串(整形数组等都行)的头指针(数组第一个元素的指针)与数组最后元素的下一个位置,sort是一个模板哈

    第二个前面两个参数同第一,但第三个参数是传递一个你定义用于排序的函数(返回比较的大小值,如strcmp或自定义的都行),因为第一个用的是默认的哈

    sort与stable_sort  

    
    

    这两个函数的原理都是快速排序,时间复杂度在所有排序中最低,为O(nlog2n) ;

    sort的应用;

    1、可以传入两个参数;

         sort(a,a+N) ,其中a是数组,a+N表示对a[0]至a[N-1]的N个数进行排序(默认从小到大排序);

    2、传入三个参数;

         sort(a,a+N,cmp),第三个参数是一个函数 ;

         如果让函数从大到小排序,可以用如下算法实现;

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

          sort(A,A+N,cmp);

    而stable_sort的用法与sort一致,区别是stable_sort函数遇到两个数相等时,不对其交换顺序;这个应用在数组里面不受影响,当函数参数传入的是结构体时,会发现两者之间的明显区别;

     
  • 相关阅读:
    打包成exe可执行文件的方法
    Html 重要单词归纳
    python基础---递归函数 知识点自查填空题
    python基础---内置函数 和 匿名函数 知识点自查填空题
    python基础---递归函数真题解析
    python 日记 day4。
    python 日记 day5 字典
    python 日记 day3
    python 日记 day4
    python 日记 day1
  • 原文地址:https://www.cnblogs.com/xiaoyunoo/p/3521317.html
Copyright © 2020-2023  润新知