美文网首页
冒泡排序法

冒泡排序法

作者: birdhsy | 来源:发表于2020-01-06 20:58 被阅读0次

python排序算法之冒泡排序

首先说一下冒泡排序原理:

冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法

它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果他们的顺序(如从大到小、首字母从A到Z)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。

  这个算法的名字由来是因为越大的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。(摘自百度百科)

简单来说 就是相邻的两个数进行比较 小的放前面大的放后面

python示例代码:

def bubble_sort2(ary):

n = len(ary)

for i in range(n):

flag = True    # 标记

for j in range(1, n - i):

if ary[j] < ary[j-1]:

        ary[j], ary[j-1] = ary[j-1], ary[j]

        flag = False

# 某一趟遍历如果没有数据交换,则说明已经排好序了,因此不用再进行迭代了

if flag:   

break

return ary

时间复杂度 线性的 O(n*n) 两个 for 两个 12*12

相关文章

  • 冒泡排序法C

    xcode冒泡排序法 下载冒泡排序。

  • 各种排序方法

    冒泡排序法 选择排序法 链表排序法 qsort()函数排序法

  • 算法-冒泡排序

    算 法:冒泡排序算法时间复杂度: 冒泡排序算法概述 冒泡排序伪代码 冒泡排序实现 冒泡排序算法概述 冒泡排...

  • 经典排序算法总结

    经典排序算法集锦 冒泡法 排序算法入门之冒泡排序 排序算法入门之冒泡排序优化

  • PHP四种基础算法详解

    需求:分别用 冒泡排序法,快速排序法,选择排序法,插入排序法将下面数组中 的值按照从小到的顺序进行排序。 1、冒泡...

  • 排序算法篇_快速排序法

      快速排序(Quick Sort)法和冒泡排序法类似,都是基于交换排序思想的。快速排序对冒泡排序法进行了改进,从...

  • iOS常见算法

    升序算法:用冒泡排序法 选择排序法 快速排序

  • 3种排序

    冒泡排序 插入排序 快速排序法

  • 第2天

    题目:对10个数进行排序 分析:可以采用冒泡排序法,也可以使用选择排序法 程序1:冒泡排序法 #include i...

  • js 常见排序算法(快速排序,选择排序等)

    快速排序法 选择排序 插入排序 冒泡排序

网友评论

      本文标题:冒泡排序法

      本文链接:https://www.haomeiwen.com/subject/dvclactx.html