c++中qsort函数和sort函数

题记  -->  在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中默认升序)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值