算法导论之冒泡排序

Posted 风影流痕

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了算法导论之冒泡排序相关的知识,希望对你有一定的参考价值。

冒泡排序

算法原理

重复遍历需要排序的数列,比较相邻两个元素的大小,排序错误则彼此交换位置,直到不存在错误排序,该数列已经排序完成。

算法实现

 
   
   
 
  1. def bubble_sort(x):

  2.    k = True

  3.    while k:

  4.        k = False

  5.        for i in range(1, len(x)):

  6.            if x[i-1] > x[i]:

  7.                x[i-1], x[i] = x[i], x[i-1]

  8.                k = True

  9.    return x

运行实例

输入:

 
   
   
 
  1. x = [56, 23, 56, 37, 31, 62, 83, 95, 70, 31]

  2. bubble_sort(x)

输出:

 
   
   
 
  1. [23, 31, 31, 37, 56, 56, 62, 70, 83, 95]


以上是关于算法导论之冒泡排序的主要内容,如果未能解决你的问题,请参考以下文章

常用排序算法之插入排序

挖掘算法中的数据结构:O(n^2)排序算法之 选择插入冒泡希尔排序 及 优化

算法排序之堆排序

重读算法导论之算法基础

排序算法之冒泡选择插入排序(Java)

排序算法之冒泡选择插入排序(Java)