- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
PAGE
程序设计经典教案
程序设计经典教案
第10章内排序
程序10.1简单选择排序
templateclassT
voidSelectSort(TA[],intn)
{
intsmall;
for(inti=0;in-1;i++){执行n-1趟
small=i;先假定待排序序列中第一个元素为最小
for(intj=i+1;jn;j++)每趟扫描待排序序列n-i-1次
if(A[j]A[small])small=j;如果扫描到一个比最小值元素还小的,则记下其下标
Swap(A[i],A[small]);最小元素与待排序序列中第一个元素交换
}
}
程序10.2直接插入排序
templateclassT
voidInsertSort(TA[],intn)
{
for(inti=1;in;i++){执行n-1趟
intj=i;
Ttemp=A[i];待插入元素存入临时变量
while(j0tempA[j-1]){从后往前查找插入位置
A[j]=A[j-1];j--;A[j-1]元素后移,j指针前移
}
A[j]=temp;待插入元素存入找到的插入位置
}
}
程序10.3冒泡排序
templateclassT
voidBubbleSort(TA[],intn)
{
inti,j,last;
i=n-1;
while(i0){最多进行n-1趟
last=0;进入循环就将last置成0
for(j=0;ji;j++)从上往下进行相邻元素的两两比较
if(A[j+1]A[j]){
Swap(A[j],A[j+1]);由于后者小,故交换
last=j;有交换就将last置成j
}
i=last;如果一趟排序中没有交换元素,则last为0
}
}
程序10.4快速排序
templateclassT
voidQuickSort(TA[],intn)
{
QSort(A,0,n-1);以初始序列为待排序序列开始快速排序
}
templateclassT
voidQSort(TA[],intleft,intright)left和right为待排序序列的下界和上界
{
inti,j;
if(leftright){若待排序序列多于一个元素,则继续快速排序
i=left;j=right+1;确定待排序序列的游动指针i,j
do{开始一趟快速排序,A[left]作为分割元素
doi++;while(A[i]A[left]);i指针从左往右找第一个分割元素的元素
doj--;while(A[j]A[left]);j指针从右往左找第一个分割元素的元素
if(ij)Swap(A[i],A[j]);若ij,则交换两个元素
}while(ij);若ij,则继续本趟排序
Swap(A[left],A[j]);交换分割元素A[left]和A[j]的位置
QSort(A,left,j-1);对低端序列快速排序
QSort(A,j+1,right);对高端序列快速排序
}
}
程序10.5两路合并的C++程序
templateclassT
voidMerge(TA[],inti1,intj
您可能关注的文档
- 程序:第08章:跳表与散列表.docx
- 程序:第01章:基础知识.docx
- 程序:第02章:线性表.docx
- 程序:第03章:栈和队列.docx
- 程序:第04章:数组和字符串.docx
- 程序:第05章:树 程序设计经典教案.docx
- 程序:第09章:图 程序设计经典教案.docx
- 《电路分析基 础》课件_西电第9章双口网络.ppt
- 《大学英语听力应用教程(第1册)》课件_Unit 13 The Secret of Happiness.pptx
- 《大学英语听力应用教程(第1册)》课件_Unit 7 Live Longer.pptx
- 《大学英语听力应用教程(第2册)》课件_Unit 4 TV Time.pptx
- 《第九章9.1_9》课件.2_9.1新一代人工智能政策解读.pptx
- 《大学英语听力应用教程(第1册)》课件_Unit 12 What is Intelligence.pptx
- 《电路分析基 础》课件_西电第5章正弦稳态交流电路功率.ppt
- 《通信系统概论》课件_第7章.ppt
- 《计算机文件基础 Windows 7+Office +Internet项目式教程》课件_第7章.ppt
- 《大学英语听力应用教程(第1册)》课件_Unit 15 Air Pollution.pptx
- 2024中国厕所管理运营行业市场深度评估及投资趋势分析报告.docx
- 2024年七年级美术上册教学计划范文(2篇) .pdf
- BIM建模实训课程指导任务书.pdf
文档评论(0)