实 验 报 告( 2 015 / 2025 学年 第二学期)课程名称数据结构A实验名称内排序算法得实现以及性能比较实验时间201 6年5月26日指导单位计算机科学与技术系指导老师骆健学生姓名耿宙班级学号B1 411 1 61 5学院(系) 管理学院专 业信息管理与信息系统 实习题名:内排序算法得实现及性能比较班级 B 1 4 1 116 姓名 耿宙 学号 B14111 6 1 5 日期20 1 6 、 05 、 26 一、问题描述验证教材得各种内排序算法,分析各种排序算法得时间复杂度;改进教材中得快速排序算法,使得当子集合小于 10 个元素师改用直接插入排序;使用随即数发生器产生大数据集合,运行上述各排序算法,使用系统时钟测量各算法所需得实际时间,并进行比较
系统时钟包含在头文件“time、h”中
二、概要设计文件 Sort、c p p 中包括了简单选择排序 Se l e c tS o rt(),直接插入排序InsertS o r t(),冒泡排序 B u bbl e Sort(),两路合并排序 M er ge(),快速排序 Quick S ort()以及改进得快速排序 G Q uickSo rt()六个内排序算法函数
主主函数m a i n 得代码如下图所示:三、详细设计1
类与类得层次设计在此次程序得设计中没有进行类得定义
程序得主要设计就是使用各种内排序算法对随机生成得数列进行排列,并进行性能得比较,除此之外还对快速排序进行了改进
下图为主函数 m a i n得流程图:main()2
核心算法1)简单选择排序:简单选择排序得基本思想就是:第 1 趟,在待排序记录 r[1]~r[n]中选出最小得记录,将它与 r[1]交换;第2趟,在待排序记录r[2]~r[n]中选出最小得记录,将它与 r[2]交换;以此类推,第 i 趟在待排序记录 r[i]~r[n]中选出最小得记录