网站大量收购独家精品文档,联系QQ:2885784924

数据结构课程设计-排序算法演示系统.docx

数据结构课程设计-排序算法演示系统.docx

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
各专业全套优秀毕业设计图纸 计算机学院 数据结构课程设计 题 目:数据结构排序算法演示系统班 级: 姓 名: 学 号: 同组人姓名: 起 迄 日 期 : 课程设计地点 : 指导教师: 评阅意见: 成绩评定:  评阅人: 日期: 完成日期: 2014 年 12 月 目录 一、课程设计的目的 1 二、设计内容和要求 1 三、数据采取的结构 1 四、功能模块详细设计 1 详细设计思想 2 冒泡排序 5 快速排序 7 直接插入排序 9 希尔排序 10 直接选择排序 12 堆排序 14 归并排序 17 五、总结或心得体会 19 六、参考文献 20 七、附录 20 - - PAGE 10 - 一. 设计目的 随着计算机技术的发展, 各种排序算法不断的被提出。 排序算法在计算机科学中有非常重要的意义, 且应用很广泛。 在以后的发展中排序对我们的学习和生活的影响会逐渐增大, 很有必要学习排序知识。 此次课程设计一方面使自己掌握排序的知识,另一方面锻炼一下团队合作开发系统的能力。 二. 设计内容和要求 功能要求: 界面友好,易与操作。可采用菜单或其它人机对话方式进行选择。 实现各种内部排序。包括直接插入排序,冒泡排序,直接选择排序,希尔排序,快速排序,堆排序,归并排序。 待排序的元素的关键字为整数或(字符)。可用随机数据和用户输入数据作 测试比较。比较的指标为有关键字参加的比较次数和关键字的移动次数 ( 关键字交换以 3 次计) 。 (1) 演示程序以人机对话的形式进行。每次测试完毕显示各种比较指标值的列表,以便比较各种排序的优劣。 三. 本设计所采用的数据结构 typedef struct { int key; }RecType; 排序算法演示系统四. 功能模块详细设计 排序算法演示系统 冒 快 直 希 直 堆 归 泡 速 接 尔 接 排 并 排 排 插 排 选 序 排 序 序 入 序 择 序 排 排 序 序 详细设计思想 主函数: #includestdio.h #includestdlib.h #include math.h #define L 8 //排序元素个数 #define FALSE 0 #define TRUE 1 typedef struct { int key; }RecType; RecType R[L]; int num; int sum; int sun; //定义排序趟数的全局变量 //系统主界面 //主函数int main() { RecType S[100]; int i,k; char ch1,ch2,q; printf(\n\t\t*********** 排序 算法 演示 系统 ************\n\n\t\t 请输入%d 个待排序的数据: \n,L); for(i=1;i=L;i++) { printf(\t\t 请输入第 %dth 数据:,i); scanf(%d,S[i].key); getchar(); } ch1=y; while(ch1==y) { printf(\n\t\t 菜 单 \n); printf(\n\t\t***********************************************\n); printf(\n\t\t * 1 更新排序数据 * 2 直接插入排序 \n); printf(\n\t\t * 3 希 尔 排 序* 4 冒 泡 排 序 \n); printf(\n\t\t * 5 快 速 排 序* 6 直接选择排序 \n); printf(\n\t\t * 7 堆 排 序 * 8 归 并 排 序 \n); printf(\n\t\t **********0 退 出************ \n); printf(\n\t\t********************************************\n); printf(\n\t\t 请选择:); scanf(%c,ch2); getchar(); for(i=1;i=L;i++) { R[i].key=S[i].key; } switch(ch2) { case 1: printf(\n\t\t 请输入 %d 个待排序数据 \n\t\t,L); for(i=1;i=L;i++) { scanf(%d,S[i].key); getchar(); printf(\t\t); } printf(\n\t\t 数据输入完毕! ); break; case 2: Insertsort(); break; case 3: Shellsort(); break; case 4: Bubblesort(); break; case 5: printf(\n\t\t 原

文档评论(0)

文档查询,农业合作 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体土默特左旗农特农机经销部
IP属地内蒙古
统一社会信用代码/组织机构代码
92150121MA0R6LAH4P

1亿VIP精品文档

相关文档