使用冒泡排序为一列数字进行排序的过程 | |
分类 | 排序算法 |
---|---|
数据结构 | 数组 |
最差时间复杂度 | O(n2) |
最优时间复杂度 | O(n) |
平均时间复杂度 | O(n2) |
最差空间复杂度 | O(n) total, O(1) auxiliary |
最佳算法 | No |
冒泡排序(Bubble Sort,台湾译为:泡沫排序或气泡排序)是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。
冒泡排序对n个项目需要O(n2)的比较次数,且可以原地排序。尽管这个算法是最简单了解和实作的排序算法之一,但它对于少数元素之外的数列排序是很没有效率的。
2011-04-28 22:17:07