(完整word版)数据结构实验报告(实验十七)(word文档良心出品)0001_第1页
(完整word版)数据结构实验报告(实验十七)(word文档良心出品)0001_第2页
(完整word版)数据结构实验报告(实验十七)(word文档良心出品)0001_第3页
(完整word版)数据结构实验报告(实验十七)(word文档良心出品)0001_第4页
(完整word版)数据结构实验报告(实验十七)(word文档良心出品)0001_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、深圳 大学实 验报告 课程名称: 数据结构实验与课程设计 实验项目名称: 希尔排序 学院: 计算机与软件学院 专业: 指导教师: 蔡平 报告人:文成 学号:2011150259班级: 5 实验时间: 2012-12-17 实验报告提交时间: 2012-12-24 教务部制 一、实验目的与要求: 目的: 1掌握哈希排序算法原理 2掌握哈希排序算法的实现方法 要求: 1.熟悉C+语言编程 2熟练编程实现哈希算法 、实验内容: 问题A:数据结构实验-希尔排序 题目描述 给出一个数据序列,使用希尔排序算法进行从小到大的排序 间隔gap使用序列长度循环除 2直到1 输入 第一行输入t,表示有t个测试示例

2、 第二行输入n,表示第一个示例有 n个数据 第三行输入n个数据,都是正整数,数据之间用空格隔开 以此类推 输出 每行输出每个示例排序后,从小到大的结果 样例输入 2 6 111 22 6 444 333 55 8 77 555 33 1 444 77 666 2222 样例输出 6 22 55 111 333 444 1 33 77 77 444 555 666 2222 三、实验步骤与过程: 希尔排序是一种按照增量排序的方法。其中增量值是小于n的正整数。 shell排序的基本思想是: 先取一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1个组。所有 距离为dl的倍数的记录放在同一个

3、组中。 先在各组内进行直接插人排序; 然后,取第二 个增量d2d1重复上述的分组和排序,直至所取的增量dt=1(dtdt- 1 -d2d1),即所 有记录放在同一组中进行直接插入排序为止。 源代码: A : #in clude using n amespace std; int ShellSort(i nt array,i nt n) int gap,i,i; for(gap=n /2;gap=1;gap-) for(i=0;igap; i+) for(j = i+gap; jn; j=j+gap) if(arrayj=0 k = k-gap; arrayk+gap = temp; retur

4、n 0; int mai n() int test nu m,i,j; cin test num; for(i=0;itest nu m;i+) int num; cinnum; int *array=new intnu m; for(j=0;j arrayj; ShellSort(arra y,nu m); for(j=0;j nu m;j+) coutarrayj; coute ndl; return 0; 四、实验结果及数据处理分析: A : 实验基本达到实验要求 五、实验结论与体会: 从这个实验中我学会使用哈希算法进行排序,虽然实现起来没有冒泡和 插入排序简单。但实验数据比较多时,比前两者时间复杂度要小。因此能熟 练使用各种排序方法失衡重要的。 指导教师批阅意见: 成绩评定: 指导教师签字: 年 月 日 备注

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论