其他分享
首页 > 其他分享> > C语言自带快排函数qsort

C语言自带快排函数qsort

作者:互联网

首先,qsort在#include<stdlib.h>中。

void qsort(void *_Base, size_t _NumOfElements, size_t _SizeOfElements, _CoreCrtNonSecureSearchSortCompareFunction _CompareFunction){}

前三个参数为数组起始地址,元素个数,每个元素大小(如sizeof(int)),最后则是自己所编写决定顺序的函数(如小到大或大到小)。

如由小到大,即:

int cmp(const void *a,const void *b)
{
    return *(int *)a - *(int *)b;
}
#include<stdio.h>
#include<stdlib.h>
int cmp(const void *a,const void *b)
{
    return *(int *)a - *(int *)b;
}
int main()
{
    int a[10] = {9,8,7,6,5,4,3,2,1,10};
    qsort(a, sizeof(a)/sizeof(a[0]), sizeof(int), cmp);
    for(int i = 0; i < 10; i++){
        printf("%d ", a[i]);
    }
}

 

 

 由大到小:

int cmp(const void *a,const void *b)
{
    return *(int *)b - *(int *)a;
}

 

详情参见:https://baike.baidu.com/item/qsort/4747970?fr=aladdin

标签:const,int,void,qsort,C语言,快排,sizeof,cmp
来源: https://www.cnblogs.com/1030WY/p/16025893.html