实验二分治法归并排序

更新时间:2023-04-16 01:09:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验报告专用纸

实验报告专用纸

实验报告专用纸

课程学院

专业

(班级)

姓名学号日期年月日2、算法分析:

设待排序记录个数为n ,

该算法的基本语句是归并算法的循环体的比较语句

“if (b[i]<=b[j]) temp[k++]=b[i++];

else temp[k++]=b[j++]; ”,

其执行次数为: ,即执行一趟归并算法的时间复杂度为。

则归并排序算法存在以下推式:

所以,归并排序算法的时间复杂度为。

另外,归并排序算法递归调用次数为。

3、结果如下:

教师签名:

成绩:

n=5

n=8

实验报告专用纸

课程学院

专业

(班级)

姓名学号日期年月日

由n = 5,6,…,10等数据的运行结果可知,

随着问题规模n的增加,其时间复杂度(比较次数的执行)也增加,

所以,该算法分析的判断正确。

4、与选择排序的对比(时间复杂度)

平均情况最好情况最坏情况选择排序

归并排序

从时间复杂度上看,归并排序的要小于选择排序,

并且实际上,

在问题规模相同而待排序记录顺序的整齐程度有所差异的情况下,

选择排序是不论待排序记录顺序的整齐程度如何,其时间复杂度都是固定的;

归并排序是若待排序记录顺序越整齐,其时间复杂度越小,

教师签名:

n=10

本文来源:https://www.bwwdw.com/article/3o0q.html

Top