美文网首页排序算法(python)
python实现冒泡排序(BubbleSort)

python实现冒泡排序(BubbleSort)

作者: 阿旭123 | 来源:发表于2020-12-08 14:58 被阅读0次

python实现【冒泡排序】

算法原理介绍

冒泡排序是一种简单的排序算法。它的基本原理思想是重复地走访过要排序的数列,并且依次比较两个元素,如果它们的顺序错误就把它们的位置进行交换。重复地遍历未排序的数组序列,直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的头部,因此称之为冒泡。

算法过程描述

  1. 比较相邻的元素。如果第一个比第二个大,就交换它们两个;

  2. 对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对,这样在最后的元素应该会是最大的数;

  3. 针对所有的元素重复以上的步骤,除了最后一个已经排序好的,重复的轮次为n-1

  4. 重复步骤1~3,直到排序完成。

算法排序图解如下

冒泡.gif

python实现代码

def bubbleSort(arr):
    n = len(arr)
    # # 进行n-1轮,每一轮会将前n-1-i个元素最大值放置n-i处
    for i in range(n-1): 
        for j in range(n-1-i): 
            if arr[j] > arr[j+1]:
                arr[j], arr[j + 1] = arr[j+1], arr[j]  # 相邻元素交换
    return arr

如果喜欢作者,欢迎点赞、收藏及关注,谢谢!
点击下面相应的链接即可查看各个算法的详细介绍及python实现方法

  1. 冒泡排序(BubbleSort)
  2. 选择排序(SelectionSort)
  3. 插入排序(InsertSort)
  4. 归并排序(MergeSort)
  5. 快速排序(QuickSort)
  6. 堆排序(Heap Sort)
  7. 计数排序(Count Sort)
  8. 桶排序(Bucket Sort)
  9. 基数排序(Radix Sort)
  10. 希尔排序(Shell Sort)

相关文章

  • python实现冒泡排序(BubbleSort)

    python实现【冒泡排序】 算法原理介绍 冒泡排序是一种简单的排序算法。它的基本原理思想是重复地走访过要排序的数...

  • js常用的排序算法

    1.冒泡排序: 最简单的排序算法,代码实现:function bubbleSort(arr) {var len ...

  • 2019-08-11

    Javascript中常用几种基础算法 1 排序-冒泡排序 //冒泡排序 function bubbleSort...

  • IOS 算法(冒泡排序、系统排序API、二分法)

    冒泡排序 - (void)bubbleSort { NSArray* nums =@[@(8),@(3),@(4)...

  • 冒泡排序–排序算法

    /* * 冒泡排序 */ public class BubbleSort { public static void...

  • 基本的排序算法总结:

    1、冒泡排序(两两比较相邻的元素,交换位置) 实现: private static void BubbleSort...

  • 冒泡排序(BubbleSort)

    BubbleSort 先说说这个最慢的排序吧,很好理解,从字面上来看排序的方式就像冒泡一样,所以是最慢的 解:(1...

  • BubbleSort—冒泡排序

    冒泡排序 冒泡排序算法的运作如下: 比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的...

  • BubbleSort(冒泡排序)

    顾名思义,冒泡排序法就是让数组元素像水中的气泡一样逐渐上浮,进而达到排序的目的。下面算法便是利用冒泡法将数列排列为...

  • 冒泡排序(BubbleSort)

    1.基本思想:两个数比较大小,较大的数下沉,较小的数冒起来。 2.过程: 比较相邻的两个数据,如果第二个数小,就交...

网友评论

    本文标题:python实现冒泡排序(BubbleSort)

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