冒泡排序的最佳情况的时间复杂度为什么是O(n)
来源:互联网 发布:2016网络动漫黑名单 编辑:程序博客网 时间:2024/05/16 15:58
今天去某公司面试,有一个问题问,冒泡排序的最佳情况的时间复杂度是多少,我答的是O(n^2),面试官一脸懵逼,今天在Stackoverflow上看到了O(n)的写法,最佳情况的时间复杂度是O(n),今天是涨姿势了。
public void bubbleSort(int arr[]) { boolean didSwap; for(int i = 0, len = arr.length; i < len - 1; i++) { didSwap = false; for(int j = 0; j < len - i - 1; j++) { if(arr[j + 1] < arr[j]) { swap(arr, j, j + 1); didSwap = true; } } if(didSwap == false) return; } }
当arr原本就是升序时,最佳时间发杂度就是O(n)。
0 0
- 冒泡排序的最佳情况的时间复杂度为什么是O(n)
- 冒泡排序最佳情况的时间复杂度,为什么是O(n)
- 冒泡排序最佳情况的时间复杂度,为什么是O(n)
- 冒泡排序法为什么最佳的时间复杂度是O(n)
- 冒泡排序最好时间复杂度为什么是O(n)?
- 为什么冒泡排序最好情况下(有序)时间复杂度是O(n),而快速选择是O(O^2)?
- 快速排序算法的时间复杂度为什么是O(NlogN),还有O(N^2)
- 冒泡算法的时间复杂度为什么是O*2
- 为什么建堆的时间复杂度是O(n)?
- 关于中位数的时间复杂度为什么是O(n)
- 排序的最低时间复杂度为什么是O(nlogn)
- 归并排序的空间复杂度为什么是O(n)?快速排序的空间复杂度为什么是O(log2n)?
- 冒泡的最佳时间 O(n)
- 时间复杂度O(n),空间复杂度O(1)的排序
- 【排序】时间复杂度为O(N^2)的排序——冒泡、选择和插入排序
- 冒泡排序最好的情况下复杂度O(N)的原因
- 时间复杂度为O(n)的排序
- 时间复杂度为O(n)的排序
- Java基础:注解
- ssh断开后保持进程运行的方法(使用nohup,screen)
- 八皇后
- Mac下升级ruby至最新版本
- 将文件换行替换成,号
- 冒泡排序的最佳情况的时间复杂度为什么是O(n)
- android 6.0拨打电话流程,源码(1)
- git使用代理
- 事件分发 响应者链
- java语言的特点
- java工程师的工作感言
- 数据通信与网络-Physical layer
- Tomcat7 类加载原理
- linux下解决设备权限的问题总结