云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 数据结构课程设计报告___几种排序算法的演示(附源代码)

数据结构课程设计报告___几种排序算法的演示(附源代码)

  • 62 次阅读
  • 3 次下载
  • 2025/6/28 19:59:22

. . .

}

break; case '2': cout<<\ *******您选择的是折半插入排序*******\\n\<

system(\); return 0;

..........

. . .

三 上机结果及体会

1) 实际完成的情况说明

此程序主要实现了对不同排序算法的演示,并给出了每一趟的变化情况

2) 程序的性能分析

a. 直接插入排序(稳定的排序方法)

1时间复杂度

a) 若待排序记录按关键字从小到大排列(正序)

n?1关键字比较次数:

1?n?1 i?1记录移动次数:2(n-1)

b)若待排序记录按关键字从大到小排列(逆序)

n 1关键字比较次数: n(n?1)n2i?? 22i?1

n 1记录移动次数: (n?4)(n?1)n2(i?2)?? 22i?1

c) 若待排序记录是随机的,取最好和最坏情况的平均值

n2关键字比较次数(约为):4

n2记录移动次数(约为):

4

2空间复杂度:S(n)=O(1)

b. 折半插入排序(稳定的排序算法)

就平均性能而言,因为折半查找优于顺序查找,所以折半插入排序也优于直接插入排序。

关键字的比较次数为:n*log2(n) c. 冒泡排序(稳定的排序算法)

1. 时间复杂度:

a) 最好情况(正序)

b) 比较次数:n-1(只要进行一趟即可) c) 移动次数:0

d) 最坏情况(逆序)

e) 比较次数:(需n-1趟,每趟达到最大比较次数) n?112(n?i)?(n?n)

2i?1 n32f) 移动次数: 3(n?i)?(n?n)2i?1在最坏情况下,时间复杂度为:T(n)=O(n2) 2. 空间复杂度:S(n)=O(1)

d. 简单选择排序(不稳定的排序方法)

????? ..........

. . .

1. 时间复杂度:O(n2)。 2. 空间复杂度:S(1)。

e. 快速排序(不稳定的排序方法)

1.时间复杂度

最好情况(每次总是选到中间值作枢轴)T(n)=O(nlog2n) 最坏情况(每次总是选到最小或最大元素作枢轴)T(n)=O(n2)

2.空间复杂度:需栈空间以实现递归

最坏情况:S(n)=O(n)

一般情况:S(n)=O(log2n)

f. 堆排序(不稳定的排序方法)] 1.间复杂性为O(nlog2n)。 2空间复杂性为O(1)。 g. 归并排序(稳定的排序方法)

1时间复杂度为O(nlog2n)。 2空间复杂度为O(n)。

3)运行情况

主菜单

..........

. . .

直接插入排序

折半插入排序

..........

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

. . . } break; case '2': cout<<\ *******您选择的是折半插入排序*******\\n\<

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com