qsort快速排序的用法

Posted 陈同学2018

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qsort快速排序的用法相关的知识,希望对你有一定的参考价值。


qsort 

语法: 


   #include <stdlib.h>  void qsort( void *buf, size_t num, size_t size, int (*compare)


(const void *, const void *) ); 

功能: 对buf 指向的数据(包含num 项,每项的大小为size)进行快速排序。如果函数compare 的第一个参数小于第二个参数,返回负值;如果等于返回零值;如果大于返回正值。函数对buf 指向的数据按升序排序。 

参数:


2 数组中待排序元素数量


3 各元素的占用空间大小


4 指向函数的指针,用于确定排序的顺序,函数自己编写,例:

int zexin(const void *a, const void *b) 

     return (*(int *)a-*(int *)b); // 正的就是从小到大排 负的就是从大到小排 


#include<stdio.h>

#include<stdlib.h>

int zexin(const void *a, const void *b) 

     return (*(int *)a-*(int *)b);//  正的就是从小到大排 负的就是从大到小排 

void main()

{ int a[100]={4,8,6,1,10,2,9},i;

qsort(a,7,sizeof(int),zexin);

for(i=0;i<7;++i)

printf("%d  ",a[i]);

    

}


以上是关于qsort快速排序的用法的主要内容,如果未能解决你的问题,请参考以下文章

qsort函数用法(转)

qsort函数用法

qsort库函数的用法

二维数组快速排序(sort+qsort)

sort与qsort的异同

FreeBSD中快速排序的实现qsort