zoukankan      html  css  js  c++  java
  • sort

    qsort():

    原型:
    _CRTIMP void __cdecl qsort (void*, size_t, size_t,int (*)(const void*, const void*));

    解释:    qsort ( 数组名 ,元素个数,元素占用的空间(sizeof),比较函数) 
    比较函数是一个自己写的函数  遵循 int com(const void *a,const void *b) 的格式。
    当a b关系为 >  <  = 时,分别返回正值 负值 零 (或者相反)。
    使用a b 时要强制转换类型,从void * 转换回应有的类型后,进行操作。 
    数组下标从零开始,个数为N, 下标0-(n-1)。

    实例:
    int compare(const void *a,const void *b)
    {
         return *(int*)b-*(int*)a;  
    }

    int main()
    {
         int a[20]={2,4,1,23,5,76,0,43,24,65},i;
         for(i=0;i<20;i++)
            cout<<a[i]<<endl;
         qsort((void *)a,20,sizeof(int),compare);
         for(i=0;i<20;i++)
            cout<<a[i]<<endl;
         return 0;
    }

    如果是sort()

    bool compare(int a,int b)

    {
          return a<b;   //升序排列,如果改为return a>b,则为降序

    }

    int _tmain(int argc, _TCHAR* argv[])
    {
         int a[20]={2,4,1,23,5,76,0,43,24,65},i;
         for(i=0;i<20;i++)
           cout<<a[i]<<endl;
         sort(a,a+20,compare);
         for(i=0;i<20;i++)
           cout<<a[i]<<endl;
         return 0;
    }

  • 相关阅读:
    四种方案解决ScrollView嵌套ListView问题
    [Android Bug] ListView中Header, Footer无法隐藏(gone)的问题
    Mysql介绍,与将脚本导入新数据库
    000 SpringBoot属性配置
    navicat的安装
    gradle
    004 Numpy
    003 Scipy库简介
    Mysql安装(绿色版安装)
    010 secondary namenode(同步元数据和日志)
  • 原文地址:https://www.cnblogs.com/ghostTao/p/4384701.html
Copyright © 2011-2022 走看看