C ++排序函数sort(),qsort()
2015-12-17 04:11
453 查看
sort():给指定区间的所有元素进行排序
example
qsort():
功 能: 使用快速排序例程进行排序
头文件:stdlib.h
原型: void qsort(void base,int nelem,int width,int (*fcmp)(const void ,const void *));
1 待排序数组首地址
2 数组中待排序元素数量
3 各元素的占用空间大小
4 指向函数的指针,用于确定排序的顺序
这个函数必须要自己写比较函数,即使要排序的元素是int,float一类的C语言基础类型。
example
#include<stdio.h> #include<algorithm> using namespace std; int main() { int a[5] = {1,5,4,2,3}; sort(a,a+5); printf("%d",a[0]); for(int i=1;i<5;i++) { printf(" %d",a[i]); } }
qsort():
功 能: 使用快速排序例程进行排序
头文件:stdlib.h
原型: void qsort(void base,int nelem,int width,int (*fcmp)(const void ,const void *));
1 待排序数组首地址
2 数组中待排序元素数量
3 各元素的占用空间大小
4 指向函数的指针,用于确定排序的顺序
这个函数必须要自己写比较函数,即使要排序的元素是int,float一类的C语言基础类型。
#include<stdlib.h> #include<stdio.h> using namespace std; int comp(const void *a,const void *b) { return *(int*)a-*(int*)b; } int main() { int array[10] = {2,4,1,5,5,3,7,4,1,5};//乱序的数组 int i; qsort(array,10,sizeof(int),comp); for(i=0;i<10;i++){ printf("%d ",array[i]); } return 0; }
相关文章推荐
- iis7设置dz论坛url静态化经验
- android自带标题样式
- 字典管理表空间 本地管理表空间 之间的区别(未懂)
- [LeetCode317]Shortest Distance from All Buildings
- [leetcode] 84. Largest Rectangle in Histogram 解题报告
- iGrimace V8 简单的安装方式
- python 线程及线程池
- 普法知识(40):宣传行政复议法的重要性
- 人品计算器
- [leetcode] 85. Maximal Rectangle 解题报告
- Apache页面压缩配置问题导致json数据传输时间延长
- Erlang 构建多层监督机制
- 安卓学习笔记五
- leetcode - Palindrome Number
- MUI 个推
- win32记事本程序(二)
- Linux netstat命令详解
- Linux netstat命令详解
- leetcode - StringtoInteger
- #3JAVA面向对象之继承#