冒泡排序(高阶版)

接上一篇文章

上一篇文章我们介绍了冒泡算法的一些概念和演示效果图,并没有涉及深层次的时间复杂度等概念。下面我们来看看冒泡算法的时间复杂度。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

时间复杂度

  1. 什么是时间复杂度?

定性的描述算法的运行时间,通常以大O表示。

  1. 时间复杂度怎么计算?

冒泡算法的时间复杂度是和算法中相邻两个数据的比较次数移动次数成正比的。具体如下:

数据个数 比较次数 最大移动次数 最小移动次数
1 0 0 0
2 1 1 0
3 3 3 0
4 6 6 0
5 10 10 0
10 45 45 0
N 1/2N(N-1) 1/2N(N-1) 0

所以根据时间复杂度的概念,冒泡算法的时间复杂度为O(N^2)

冒泡算法的优缺点

  • 优点:简单,空间复杂度低,稳定
  • 缺点:时间复杂度高,效率低

算法效果展示

在这里插入图片描述

源码下载

  • 链接如下https://download.csdn.net/download/zhuzi9/12449512

更多算法学习请关注我的公众号

在这里插入图片描述

展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 大白 设计师: CSDN官方博客
应支付0元
点击重新获取
扫码支付

支付成功即可阅读