- 1、本文档共20页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《数据结构》内排序算法创新
《数据结构》
课程设计报告
设计题目 内 排 序 算 法
学院名称
专 业 班 级
姓 名
学 号
目录
一、 实验题目 1
内排序算法 1
二、问题描述 1
三、设计目标 1
四、需求分析 1
五、概要设计 1
六、函数 2
流程图 3
七、测试分析 4
八、使用说明 7
九、课程设计总结 8
十、附录(各功能函数源代码) 9
实验题目 内排序算法
二、问题描述
要求从外部文件读入或直接输入数据,编写一程序,通过插入、选择、交换、归并、基数等方法进行数据的排序。
三、设计目标
设计一个程序,利用内排序各算法,如直接插入、希尔、冒泡、直接接择、基数、归并、堆排序等算法进行数据排序,输出每趟排序结果,让排序算法更加明了,大大提高排序效率,缩短时间的花费。
四、需求分析
本次试验主要分为以下四大功能模块:
头文件:定义全局变量,申明函数;
菜单:各排序算法的分类;
算法:对不同算法的描述定义;
主函数:定义局部变量,调用各函数。
五、概要设计
1、各个模块功能的详细描述void insetsort(int b[],int n);//直接插入
void sheelsort(int b[],int n);//希尔排序
void binarysotr(int b[],int n);//折半插入排序
void selectsort(int b[],int n);//简单选择排序
void heapsort(int b[],int n);//堆排序(完全二叉树)
void bubblesort(int b[],int n);//冒泡排序
void quicksort(int b[],int low,int high);//快速排序
void Merge(int a[],int low,int mid,int high,int b[]);//归并排序
void jishu(int b[],int n);//基数排序
系统结构功能图
六、函数 1、头文件a、h.h#includestdio.h
#includetime.h
#includestdlib.h#includemath.h
#includestring.h
#define N 10000int
g_flag;
b、“head.h”#includestdio.h
#includetime.h
#includestdlib.h
#includemath.h
#includestring.h
#define MaxKeyNum 12// 最大关键字个数
#define Radix 10 //关键字的基数
#define MaxSize 80//元素的个数
typedef int KeyType;//关键字类型为int 型
typedef struct
{
char key[MaxKeyNum];
int next;
}SListCell;//每个元素的关键字类型
typedef struct
{
SListCell data[MaxSize];
int keynum,len;//关键字的个数及静态链表的长度
}SList;//静态链表类型
typedef int addr[Radix];//定义静态指针数组类型
typedef struct
{KeyType key;
}DataType;//元素类型*/
SList L;
DataType a[MaxKeyNum];#includeh.h
#includefp.c
#includemudex.c
#includeRad
#includesort1.c
void main()
{int g_flag;
int b[N],n;
char ch;
ixsort.c
g_flag=0;
n=reaData(b);
system(mode con: cols=170 );//调整屏幕显示大小 列、行
while(1)
{
switch(nume())
{
ch=getchar();
case 1:
{
{
switch(insetr_mu())
文档评论(0)