1 / 10
文档名称:

数据结构排序算法.docx

格式:docx   页数:10页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数据结构排序算法.docx

上传人:799474576 2015/5/29 文件大小:0 KB

下载得到文件列表

数据结构排序算法.docx

文档介绍

文档介绍:常见排序算法总结
1. 基本概念
排序:是将一组数据元素按某种特定要求(升或降序)排列成有规律序列的过程。
排序可以分为内部排序和外部排序两种:
1). 若整个排序过程不需要访问外存便能完成,则称此类排序为内部排序。
2). 若参加排序的记录数量很大,整个序列的排序过程不可能在内存中完成,需要借助外存来完成,则称此类排序为外部排序。//不涉及内外存交换
就地排序:若排序算法所需的辅助空间并不依赖于问题的规模n,即辅助空间为O(1),则称为就地排序。
稳定性:假设在待排序的元素中,存在两个或两个以上的元素具有相同的关键字,在用某种排序法排序后,若这些相同关键字的元素的相对次序仍然不变,则这种排序方法是稳定的。
2. 常见内部排序
交换排序
交换排序的基本思想是两两比较待排序记录的关键字,若发生与排序要求相逆,则交换之,反复进行,直到数据有序。
交换排序的主要方法有:冒泡排序和快速排序。
1). 冒泡排序
a. 算法思想
已知一组无序数据元素P[n],需将按其关键字升序排列。
第一趟对n个元素冒泡得到一个关键字最大的元素P[n-1],第二趟冒泡对n-1个元素得到一个关键字最大的元素P[n-2],依次类推,直到数据有序。
b. 算法实现
void buble(int arr[], int n)
{
bool flag;//用于判断是否发生了交换
int i;
int temp;//临时变量
//反复多轮,从小到大排序。
do {
//一轮排序
flag = false;
//反复比较所有相邻的元素,循环比较n-1次。
for(i = 1; i < n; i++) {
//如果顺序不当,就交换他们。
if(arr[i] < arr[i - 1]) {
temp = arr[i];
arr[i] = arr[i - 1];
arr[i - 1] = temp;
//记录本轮已发生交换
flag = true;
}
}
n--;
}while(flag);//知道本轮没有发生交换,循环退出。
}
注:
冒泡排序算法是稳定的,时间复杂度是O(n^2)。
冒泡排序算法适合只有少量乱序的数据。
2). 快速排序
a. 算法思想
已知一组无序数据元素P[n],需将按其关键字升序排列。
首先任取一个元素P[x](通常选取首元素)作为基准,多次比较P[x]与其它元素并交换。
直到当P[x]可以排在序列的第k位,并且使P[0]~P[k]中的每一个元素小于P[x],P[k+1]~P[n-1]中的每一个元素不小于P[x]时,交换P[x]和P[k]。
再分别对P[0]~P[k-1]和P[k+1]~P[n-1]两组数据元素重复上述过程,直到数据有序。
b. 算法实现
//交换函数
void swap(int *a, int *b)
{
int temp;
temp = *a;
*a = *b;
*b = temp;
}
//快速排序
void qsort(int arr[], int n)
{
int temp;
int *L, *R;

最近更新

《自然科学史研究》第4卷(1985年)总目录 2页

高三高考数学(理复习)7-7课件 38页

《应用光学》一九八四年总目录 2页

《北方岩溶和岩溶水学术讨论会》在太原召开 2页

Ⅲ型热电偶温度变送器线性度的分析及调试方法.. 2页

“第三次全国生物全息律讨论会”简介 2页

“数字通信在微波中的应用”书评 2页

“创优、分核、联利”网络管理法研究(下) 2页

第三方支付平台竞争策略与产业规制研究 3页

γ射线对硝酸纤维素记录α粒子灵敏度影响的探.. 2页

ZS—901阻燃不饱和聚酯树脂的研究 2页

北师大版数学七上《展开与折叠(一)》课件 20页

第19课《美丽的西双版纳》教案(苏教版初二上).. 2页

TW—1蜡乳液工业化生产操作条件研究 2页

TD-LTE室内场景的性能分析 2页

Si(113)表面原子结构的低能电子衍射研究 2页

初中新旧德育教科书的比较研究 1页

饮食与视力的关系 7页

2025年幼儿园儿童安全责任书范文 8页

第三章高尔夫市场营销策划 56页

2025年幼儿园亲子运动会园长致辞 12页

2025年幼儿园中秋节活动策划书 20页

PtSi和PdSi肖特基接触的XPS研究 2页

PLC在变电站变压器自动化中的应用研究 2页

PET低聚物有机溶剂溶解性能的探讨 2页

2025年幼儿园万圣节主题活动策划 12页

P-MOS单稳电路的原理和应用(下) 2页

2025年年终总结通用范文大全(9篇) 30页

2025年年终工作总结心得 43页

工程质量控制中试验检测的重要性 24页