链式简单选择排序课程设计

链式简单选择排序课程设计

ID:11099030

大小:185.00 KB

页数:13页

时间:2018-07-10

链式简单选择排序课程设计_第1页
链式简单选择排序课程设计_第2页
链式简单选择排序课程设计_第3页
链式简单选择排序课程设计_第4页
链式简单选择排序课程设计_第5页
资源描述:

《链式简单选择排序课程设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、武汉理工大学《数据结构》课程设计说明书链式简单选择排序1设计题目链式简单选择排序2问题描述链式简单选择排序即以单链表为存储结构,实现简单选择排序的功能。显然,实现该程序就是先要建立一个单链表,利用单链表对数据进行存储、操作。将输入的整型数据以结点的形式存储在这个建立的单链表中。然后对单链表中的这些结点的值进行简单选择排序。该问题中,以带有附加头结点的单链表为存储结构,排序分为从大到小排序和从小到大排序两种方式,我们可以用这两种方法分别实现进行排序,分别得到结果。3设计3.1存储结构设计线性表的链式存储结构的特点是用一组任意的可以是不连续的存储单元存储线性表的数据元素。

2、它包括两个域:其中存储数据元素信息的称为数据域;存储直接后继存储位置的域称为指针域。单链表结构体的定义如下:Structlink_node//链表节点类的定义{intdata;//指针域link_node*next;//值域,不是float*next;关于链表中的//指针指向问题link_node(link_node*ptr=NULL){next=ptr;};//初始化指针成员的构造函数link_node(constint&item,link_node*ptr=NULL){//初始化指针成员和数据的构造函数12武汉理工大学《数据结构》课程设计说明书data=item;

3、next=ptr;};};//结构体定义“;”结束其中,值域data以整型存储了所要排序的关键字值,而指针域next以指针型存储了指向下一个结点的地址。其中两个构造函数分别用于初始化数据和指针成员。Link_node是定义的一个全局结构体变量,可以在下面的任何函数中调用。3.2主要算法设计本程序中主要用到5个函数,分别是构造函数list()、输入结点数据input(int)、输出数据函数output()、从小到大排列函数SelectSort1()、从大到小排列函数voidSelectSort2()。构造函数:list(){first=newlink_node;};//

4、创建附加头结点,first指向该结点输入节点数据函数:利用后插法建立链表,算法如下voidlist::input(intendTag)//其中DendTag为约定的输入序列结束标括志;利用后插法建立单链表{link_node*newnode,*last;intval;make_empty();//清空链表cin>>val;last=first;while(val!=endTag)//last指向表尾{newnode=newlink_node(val);if(newnode==NULL){12武汉理工大学《数据结构》课程设计说明书cerr<<"存储分配失误"<

5、l;exit(1);}//动态分配失败last->next=newnode;last=newnode;//last永远指向表尾cin>>val;//插入到表末端}last->next=NULL;//可有可无,表收尾}函数SelectSort1()和SelectSort2()的基本实现思想是一样的,只是一些细节有所不同。两者构成了本程序的主体部分,链式简单选择排序的基本思想是:每一趟排序(例如第i趟,i=0,1,2,…,n-2)在后面n-i个待排序的节点数据中找出最小的元素,作为有序元素排列的第i个元素。待到第n-2趟做完,待排序元素只剩一个了,就不用再选了。Selec

6、tSort1()//实现从小到大排序,其实现代码见附表实验代码。SelectSort2()//实现从大到小排序,其实现代码见附表实验代码。这样,主要算法中的函数,只需在主函数中调用即可实现。3.3测试用例设计任意输入几个数据,以0为终止符,例如输入972845,634873,127498,928134,518487,215398,对其进行从大到小的排序,排序后结果应为972845,928134,634873,518487,215398,127498。再输入若干整数,例如输入98375,69828,76837,10738,63874,90897,对其进行从大到小的排序,

7、排序后结果应为10738,63874,69828,76837,90897,98375。4调试报告本实验需要采用支持标准MicrosoftVisualC++2010Express编译器,并采用最基础的Win32控制台程序。12武汉理工大学《数据结构》课程设计说明书在调试程序时,出现错误提示如下:(1)1>------已启动生成:项目:链式简单选择排序--初级版,配置:DebugWin32------1>链排序.cpp1>c:usersadministratordocumentsvisualstudio2010projects链式简单选择排序

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。