冒泡排序的时间复杂度
来源:互联网 发布:硬盘跑分软件 编辑:程序博客网 时间:2024/06/05 22:42
冒泡排序时间复杂度
冒泡排序是一种用时间换空间的排序算法,最坏的情况是把顺序的排序变成逆序,或者把逆序的排序变成顺序,每一次比较都需要进行交换运算。
比如把5,4,3,2,1变成冒泡生序排列,第一次排序是5,4,第二次比较是5,3,第三次比较是5,2,第四次比较是5,1,一共进行了4次位置交换。这是第一次循环。
现在队列5,4,3,2,1变成4,3,2,1,5,然后进行排序,第一次排序4,3,第二次排序4,2,第三次排序4,1,一共进行了3次位置交换。这是第二次循环。
。。。
以此类推,4,3,2,1。 总的比较次数是4+3+2+1=10次。
对于n位的数列 可以是(n-1)+ (n-2) + (n-3) +(n-4)+ ...+1=n*(n-1)/2,这个就是最大比较次数,也就是最坏比较次数。也就是最坏时间复杂度。
如果n-->特别大 ,n*(n-1)/2近似等于0.5*n^2;
0 0
- 冒泡排序的时间复杂度
- 简单冒泡排序的时间复杂度及其两种优化
- 冒泡排序时间复杂度和算法
- 时间空间复杂度 冒泡 选择 快速排序
- 排序的时间复杂度
- Java菜鸟教程 冒泡排序,时间复杂度和空间复杂度
- 【排序】时间复杂度为O(N^2)的排序——冒泡、选择和插入排序
- 排序算法的C语言实现以及各个算法的时间复杂度和空间复杂度分析(冒泡排序)
- 冒泡排序和快速排序耗时比较(时间复杂度的理想与现实)
- 快速排序和冒泡排序的时间复杂度分析(C++算法实现对比)
- 8大排序之 -------冒泡排序 与时间复杂度
- 交换排序之冒泡排序优化源码及时间复杂度
- 冒泡算法的时间复杂度问题
- 冒泡排序的最佳情况的时间复杂度为什么是O(n)
- 排序法的时间复杂度
- 各种排序的时间复杂度
- 常用的时间复杂度排序
- 排序算法的时间复杂度
- Myeclipse8.6注册机代码
- zSmartNet
- LeetCode String to Integer (atoi)
- FMS中的各种类
- WebRTC编译详细介绍
- 冒泡排序的时间复杂度
- ASP.NET页面间传值的几种方式
- Cannot change version of project facet Dynamic Web Module to 2.5
- 初学JAVA者,只是对最近学习JAVA的一些简单理解,杂乱无章~~~~
- cocos2dx3.0 结构图
- CuteFTP实现windows和Fedora12数据共享
- zStorage
- linux 系统 ko模块编译
- 图形化的电力通信光纤资源管理系统概述与功能特点