C language actually comes with qsort function
来源:互联网 发布:防蓝光夹片 知乎 编辑:程序博客网 时间:2024/06/04 23:22
Quick sort is one of the most used sorting algorithm, I have detailed review before, in the C standard library actually has a quick sort function, let’s talk about the details of usage.
The qsort function is contained in
void qsort(void * base,size_t nmemb,size_t size ,int(*compar)(const void *,const void *));
Parameter Description:
1.base, the array to sort;
2.nmemb, the number of elements in the array;
3.size, the memory space occupied by each array element can be obtained using the sizeof function
4.compar, the pointer to the function pointer function. This function is used to compare two array elements, the first parameter is greater than, equal to, less than the second parameter, respectively, showed positive, zero, negative.
Here are a few examples:
#include<stdio.h> #include<stdlib.h> #include<math.h> #include<string.h> void main(void) { int i; int a[10]={0,1,2,3,4,5,6,7,8,9}; char b[10]={'a','b','c','d','e','f','g','h','i','j'}; double c[10]={0.1,0.2,0.9,0.5,0.3,0.6,0.7,0.8,1.1,1.2}; int cmp1(const void * a,const void * b) { return (*(int*)a-*(int*)b);//a>b Return positive } int cmp2(const void * a,const void *b) { return(*(char*)a-*(char*)b); } int cmp3(const void * a,const void * b) { if(fabs(*(double*)a-*(double *)b)<1*exp(-20)) return 0; else return(((*(double*)a-*(double*)b)>0)?1:-1); } qsort(a,10,sizeof(int),&cmp1); /*For function pointers (pointers to functions), it is possible to directly pass in the function name and the function name for the & operation because the function address is also taken when the function is called*/ qsort(b,10,sizeof(char),cmp2); qsort(c,10,sizeof(double),cmp3); for(i=0;i<10;i++) printf("%d ",a[i]); for(i=0;i<10;i++) printf("%c ",b[i]); for(i=0;i<10;i++) printf("%lf ",c[i]); }
阅读全文
0 0
- C language actually comes with qsort function
- C Language Study - a dangerous function - getchar()
- C language tutorial Chapter fifth: function
- C language tutorial Chapter fifth: function 2
- C language tutorial Chapter fifth: function 3
- C Programming Language: Function Pointer Array Study
- PostgreSQL C Language Function 常用类型对照
- Power comes with responsibility
- FUNCTION LANGUAGE
- FUNCTION LANGUAGE
- [C++] Build Shared libraries with GCC on Linux ---gcc is actually for compile C
- C language constructor & destructor with GCC
- DB2 C language external scalar user-defined function
- lua study -- how to call lua function use C language
- qsort.c
- [C]qsort
- c++.qsort
- use lib function on linux with C
- TP框架中的页面继承,以及控制器
- JVM中触发full gc的条件
- spark学习-39-Spark的StaticMemoryManager
- PHP学习笔记 15
- GeneGAN: Learning Object Transfiguration and Attribute Subspace from Unpaired Data
- C language actually comes with qsort function
- View控件可见性
- MFC学习笔记7 MFC基础
- 把后台的调试信息显示到浏览器控制台
- 表示数值的字符串
- Bootstrap 模态框垂直居中处理
- 如何判断Linux主机是否被攻击
- 万亿平安,如何继续高速增长?
- 字符流中第一个不重复的字符