码迷,mamicode.com
首页 > 编程语言 > 详细

排序算法之冒泡排序

时间:2020-02-16 20:40:57      阅读:77      评论:0      收藏:0      [点我收藏+]

标签:print   image   稳定性   排序算法   记录   com   img   bubble   排序   

冒泡排序:最简单的排序算法

时间复杂度:

        最优时间复杂度O(N),表示遍历一次没有发现任何可以交换的元素,排序结束

        最差时间复杂度O(N2)

稳定性:稳定

Python代码:

 1 #bubble_sort:冒泡排序
 2 
 3 def bubble_sort(alist):
 4     """冒泡排序"""
 5     n = len(alist)
 6     for j in range(n-1):
 7         count = 0  #记录内层循环是否进行交换,如果交换,那么加一
 8         for i in range(n-1-j):
 9             #内层循环:从头走到尾
10             if alist[i] > alist[i + 1]:
11                 alist[i],alist[i + 1] = alist[i + 1],alist[i]
12                 count += 1
13         if 0 == count:
14             break
15     """
16     for j in range(n-1,0,-1):
17         for i in range(j):
18     """
19 
20 if __name__ == "__main__":
21     alist = [23,45,13,56,78,34,23]
22     print(alist)
23     bubble_sort(alist)
24     print(alist)

输出结果:

技术图片

 

排序算法之冒泡排序

标签:print   image   稳定性   排序算法   记录   com   img   bubble   排序   

原文地址:https://www.cnblogs.com/xiaodangdang/p/12318432.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!