




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#includeusing namespace std;typedef int ElemType;/直接插入排序void InsertSort ( ElemType A, int n )int i, j;ElemType x;for ( i=1; i=0; j- ) /从第i-1个开始往前找插入点 if ( x Aj ) Aj+1=Aj; else break; Aj+1=x; /插入/直接选择排序void SelectSort(ElemType A, int n) int i, j, k; ElemType x; for ( i=0; i=n-2; i+ ) /每一趟选择最小元素并与Ai交换 k=i; for (j=i+1; j=n-1; j+) /查找最小元素的下标 if (Aj= 0; i-) Sift(A, n, i); /调整Ai.n-1使之为一个堆 void Sift(ElemType A, int n, int i) / 调整Ai.n-1成为一个堆(它的左右子树已是一个堆) ElemType x=Ai; int j = 2 * i + 1; / j为i的左孩子 while (j = n-1) / i有左子树 if ( j +1 n & Aj Aj+1) j+; / 使j指向左右孩子中排序码大的孩子 if ( x=1;i-) x = A0; /第个元素与第i个元素交换 A0 = Ai; Ai = x; Sift(A, i, 0); /调整A0.i-1使之为一个堆 /冒泡排序void BubbleSort( ElemType A, int n )int i, j, flag; /flag为交换标记ElemType x;for (i=1; i=i; j-) /第i 趟if ( Aj Aj-1) flag=1; /出现交换x=Aj; Aj=Aj-1; Aj-1=x; if (flag=0) return; /快速排序void QuickSort(ElemType A, int s, int t) /递归算法,对区间As At 进行快速排序int i=s+1, j=t;ElemType temp, x = As; /第一个为基准元素while ( i=j ) while ( i=j & Ai= x ) i+; /从左到右 while ( i=x) j-; /从右到左 if ( i j ) temp=Ai; Ai=Aj; Aj=temp; i+; j-; if (s!=j) /交换基准元素 As=Aj; Aj=x; if (sj-1) QuickSort(A, s, j-1); /处理左区间 if (j+1t) QuickSort(A, j+1, t); /处理右区间void main() int i,j,n,N=5;cout请输入个整数:; ElemType A5;for(j=0;jAj;cout排序前为:endl;for(i=0;iN;i+)coutAiendl;cout直接插入排序:endl;InsertSort (A, N );for(i=0;iN;i+)coutAiendl;运 /运行结果如右;cout直接选择排序:endl;SelectSort(A, N);for(i=0;iN;i+)coutAiendl; cout堆排序:endl;HeapSort(A, N); for(i=0;iN;i+)coutAiendl; cout冒泡排序:endl; BubbleSort(A, N); for(i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 收购粮食行业知识培训课件
- 收获真正的友谊
- 福建省泉州市德化县2025年中考适应性考试数学试题含解析
- 支部应急知识培训课件稿
- 支气管扩张并咯血课件
- 攀枝花消防安全知识培训课件
- 2026届沧州市高三语文上学期开学测试卷附答案解析
- 播音主持课件自我介绍
- 2024年电梯维修检测员资格基础知识考试题与答案
- 2024年高速道路清障与协作交通顺畅人员安全技能知识试题库及答案
- 2025-2030中国直升机旅游行业市场深度调研及发展趋势与投资前景预测研究报告
- 林业高级职称试题及答案
- 钩针编织技术课件
- 2024下半年教师资格证考试《高中语文学科知识与教学能力》真题
- 2025年中考数学几何模型归纳训练:最值模型之阿氏圆模型解读与提分训练
- 2025年民航安全试题简答题及答案
- 2025年事业编畜牧笔试试题及答案
- 江苏省职教高考烹饪类专业知识考试复习题(附答案)
- 焊接技术培训(基础教程)课件
- 健康教育高血压课件
- 多耐病人的护理管理
评论
0/150
提交评论