首页 > 编程知识 正文

c语言qsort函数,sort函数怎么用

时间:2023-05-04 04:14:53 阅读:263124 作者:4326

题记  -->  在C++的STL里面有两个sort与qsort可以直接用于对各种类型的数据以及容器进行排序。

1、sort

sort函数,与qsort同为排序函数,复杂度为n*log2(n)。sort()定义在头文件<algorithm>中,使用时需要include<algorithm>

sort函数是标准模板库的函数,执行速度一般比qsort要快。另外,sort()是类属函数,可以用于比较任何容器,任何元素,任何条

件。 推荐使用sort函数而不用qsort函数sort函数用法多变,默认是可以直接使用两个参数,可以传两个参数或三个参数。

第一个参数是要排序的区间首地址,第二个参数是区间尾地址的下一地址。sort函数默认是升序。

使用方法:

void sort ( RandomAccessIterator first, RandomAccessIterator last );

void sort ( RandomAccessIterator first, RandomAccessIterator last, Compare comp );

参数意义:

first:要排序的区间首地址

last:区间尾地址的下一地址

comp:函数指针,指向比较函数(这个函数是要自己写的,sort中默认升序)

如要数组按降序排列,可以先定义一个比较函数cmp: 

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

 

 

2、qsort

qsort函数定义在头文件<algorithm>中,使用时需要include<algorithm> 

功 能: 使用快速排序例程进行排序   

使用方法:

void qsort( void *base, size_t num, size_t width, int (__cdecl *compare ) 

参数意义:

base:需要排序的目标数组开始地址 

num:目标数组元素个数 

width:目标数组中每一个元素长度 

compare:函数指针,指向比较函数(这个函数是要自己写的,sort中默认升序)

 

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。