本文主要是介绍qsort()快排,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
快排sqort()
//部分验证,推理得出。内容基本可靠!
对int/char/float/double整形数组的快排/
#include
#include<stdlib.h>
int
{
return
}
int
{
元素类型
}
///
///对结构体某元素的快排
#include
#include<stdlib.h>
int
struct
{
}ss[V];//V为数组大小
int
{
}
int
{
}//一级结构体排序
int
{
if((*(struct
return
else
}//二级结构体排序
//多级结构体以此类推
///
//对结构体重字符串的快排///
#include
#include<string.h>
#include<stdlib.h>
struct
{
int
char
}ss[V];//V为数组大小
int
{
return
}
int
{
qsort(ss,cnt,sizeof(ss[0]),cmp);//对结构体ss按照结构体中字符串ch的字典顺序进行快排//cnt为要排的元素的个数
}
///
//注意事项/
1.根据实际操作发现qsort在排非常大(或非常小)的数(如<limits.h>中的INT_MAX(INT_MIN))时会失灵(不排这个数),原因暂不明,使用时要注意!
2.使用qsort应用.c编辑,不可用.cpp!
原文链接:http://blog.sina.com.cn/s/blog_99d77d1301011ru2.html
这篇关于qsort()快排的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!