大数据结构课程设计报告材料---几种排序算法地演示(附源代第四次实验码).pdf

大数据结构课程设计报告材料---几种排序算法地演示(附源代第四次实验码).pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
本周的实验主要做快速排序,自己随机生成 10000 个数 据,用快速排序算法,输出排序完成所需时间, 再用其他 排序方法做比较,至少完成两个算法的效率比较 数据结构课程设计报告 —几种排序算法的演示 时间: 2010-1-14 一 需求分析 运行环境 Microsoft Visual Studio 2005 程序所实现的功能 对直接插入排序、折半插入排序、冒泡排序、简单选择排序、快速排序、堆排序、归并 排序算法的演示,并且输出每一趟的排序情况。 程序的输入(包含输入的数据格式和说明) 1排序种类三输入 2 排序数的个数的输入 3 所需排序的所有数的输入 程序的输出(程序输出的形式) 1主菜单的输出 2 每一趟排序的输出,即排序过程的输出 二 设计说明 算法设计思想 1交换排序(冒泡排序、快速排序) 交换排序的基本思想是: 对排序表中的数据元素按关键字进行两两比较, 如果发生逆序 (即排列顺序与排序后的次序正好相反) ,则两者交换位置, 直到所有数据元素都排好序为 止。 2 插入排序(直接插入排序、折半插入排序) 插入排序的基本思想是: 每一次设法把一个数据元素插入到已经排序的部分序列的合适 位置, 使得插入后的序列仍然是有序的。 开始时建立一个初始的有序序列, 它只包含一个数 据元素。 然后, 从这个初始序列出发不断插入数据元素, 直到最后一个数据元素插到有序序 列后,整个排序工作就完成了。 3 选择排序(简单选择排序、堆排序) 选择排序的基本思想是: 第一趟在有 n 个数据元素的排序表中选出关键字最小的数据元 素,然后在剩下的 n-1 个数据元素中再选出关键字最小(整个数据表中次小)的数据元素, 依次重复,每一趟(例如第 i 趟, i=1 ,…, n-1 )总是在当前剩下的 n-i+1 个待排序数据元 素中选出关键字最小的数据元素,作为有序数据元素序列的第 i 个数据元素。等到第 n-1 趟选择结束, 待排序数据元素仅剩下一个时就不用再选了, 按选出的先后次序所得到的数据 元素序列即为有序序列,排序即告完成。 4 归并排序(两路归并排序) 两路归并排序的基本思想是: 假设初始排序表有 n 个数据元素, 首先把它看成是长度为 1 的首尾相接的 n 个有序子表(以后称它们为归并项),先做两两归并,得 n/2 上取整个长 度为 2 的归并项(如果 n 为奇数,则最后一个归并项的长度为 1);再做两两归并,……, 如此重复,最后得到一个长度为 n 的有序序列。 程序的主要流程图 开始 进入主菜单 选择排序方法 直插 折半 冒泡 选择 快排 堆排 归并 输出排序结果 退出系统 程序

文档评论(0)

wanggx999 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档