1 / 8
数据结构实验报告
学号:2020 姓名: 专业:软件工程
知识范畴:内部排序 完成日期:2021 年 12 月 28 日
实验题目:多种排序算法的实现
课程目标 1(60%)
课程目标 2(40%)
批阅人签字
程序代码及测试
写作、排版、代码注释等
得分(100 分)
期末成绩占比 5%
实验内容及要求:
输入 n 个整数,分别用希尔排序、快速排序、堆排序和归并排序实现由小到大排序并输出
排序结果。要求 n=10,15,20 进行三组排序实验。
实验目的:掌握希尔排序、快速排序、堆排序、归并排序算法。
数据结构设计简要描述:
将输入的整数储存在 A 数组中,B 数组用来备份数据,每次运行时将 B 数组数据传入要进行的
排序函数中;
算法设计简要描述:
分别采用四种算法的思想编写四个函数模块,即分别利用希尔排序、快速排序、堆排序和归并
排序的方法对输入的整数进行从小到大的排列,其主要算法思想参照课本所提供的大致思路;
输入/输出设计简要描述:
用户首先输入需要排序的整数的个数 n,接着输入这 n 个数,然后输出选择界面,通过输入 1、
2、3、4 或 0 来选择希尔排序、快速排序、堆排序、归并排序或退出
编程语言说明:
C++语言编写
主要函数说明:
void ShellSort_Up(int *arr, int length)//
希尔排序
void quickSort(int array[], int low, int high)//
快速排序
void QuickSort(int *arr, int begin, int end)//
堆排序
void merge(int array[], int low, int mid, int high)//
归并排序
void mergeSort(int array[], int low, int high) //
归并排序主函数