zoukankan      html  css  js  c++  java
  • 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函数遇到两个数相等时,不对其交换顺序;这个应用在数组里面不受影响,当函数参数传入的是结构体时,会发现两者之间的明显区别;

     
  • 相关阅读:
    两条线路,如何选
    Eczema
    Eczema
    healing psoriasis -151
    12/30/2019
    how sales area determined for returns vendor?
    [转]SAP LSMW 不能为勾选供应商采购组织视图'Returns Vendor’选项然后维护运达方做录屏...
    通过RFC获取其他SAP系统的数据
    goturkey
    Instant Client 配置
  • 原文地址:https://www.cnblogs.com/xiaoyunoo/p/3521317.html
Copyright © 2011-2022 走看看