2023年数据结构排序实验报告.pdf
《2023年数据结构排序实验报告.pdf》由会员分享,可在线阅读,更多相关《2023年数据结构排序实验报告.pdf(11页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 数据结构课程设计报告实验五排序一、需求分析:本演示程序用C+6 .()编写,完毕各种排序的实现,对输入的一组数字实现不同的排序方法,对其由小到大顺序输出。(1)分别对直接插入排序、希尔排序、冒泡排序、快速排序、选择排序、堆排序算法进行编写。(2)、对存储的函数即输入的数字进行遍历。(3)、初始化函数对输入的数字进行保存。(4)、主函数实现使用者操作界面的编写,对输入、选择、保存、输出的各种实现。这当中还涉及了各个函数的调用的实现。(5)、程序所能达成的功能:完毕对输入的数字的生成,并通过对各排序的选择实现数字从小到大的输出。二、程序重要功能以及基本规定:(1)、设计一个菜单,格式如下:1、直
2、接插入排序2、希尔排序3、冒泡排序4、快速排序5、选择排序6、堆排序7,退出(2)、选择不同的菜单但进行相应的排序,并给出排序的关键字序列。三、系统框架图:本程序包含了 9 个函数,它们分别是:(1)、直接插入排序的算法函数InsertSort()。(2)、希尔排序的算法函数ShellS or t()(3)、冒泡排序算法函数B u bbleSo r t().(4)、快速排序的算法函数Partition(5)、选择排序算法函数Sele c tSort()o(6)、堆排序算法函数H eapAdjust O。(7)、对存储数字的遍历函数Vis i t()。(8)、初始化函数 In i t S q L
3、 i st。(9)、主函数ma i n()。主函数各对输操作个入的界面排数组的设序进行计,函算遍历数的却诵 田.四、具体设计实现各个算法的重要内容,下面是各个函数的重要信息:(1)各个排序函数的算法:一、直接插入排序v oid I n sertS o rt(SqL ist&L)(in t i,j;f o r(i=2;i=L.leng t h;i+)o i f(L.r i.key L.r i-1.key)g(0 L.r0=L.r i ;aL.ri=L.ri-1;6 f or(j=i-2;(L.r E 0.ke y L.r j.k ey);。,L.rj+1=L.rj;a L.r j+1=L.r 0
4、;00 j)二、希尔排序void ShcllS o rt(SqLis t&L)nt i,j;int d k=1;/增量w h il e(dk 0)(dk/-3;/减小增量f o r(i=dk;i=dk)&(L.r.j-dk.k ey L.r 0.key)(L.r j .key=L.r j-dk.key;j=dk;)L.rj.k e y=L.r OJ.key;4)三、冒泡排序v oid B u bbleSo r t(Sq Li s t&L)(int i,j;for(i=0;iL.length-2;i+)in t flag=1;f or(j=O;j L.r|j+l.k ey)dftdf 1 ag=
5、0;g nnt temp;,temp=L.r j,k e y;g L.r j.key=L.rj+l.k e y;。L.rj+1.key=temp;g”若无互换说明已有序g i f(f lag=1),g b reak;0)四、快速排序in t Pa r ti t ion(S Q List&L,in t low9int hi g h)(分割区域函数L.r0=L.r low;int pi v ot k e y=L.r low.key;一般将顺序表第一个元素作为支点w h il e(1 o w high)。whil e(low=p i v ot k ey)g high-;,L.rIow=L.rhigh
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023 数据结构 排序 实验 报告
限制150内