美文网首页
冒泡排序 by Python

冒泡排序 by Python

作者: 慧鑫coming | 来源:发表于2019-01-30 22:08 被阅读0次

最好时间复杂度:O(n)
最坏时间复杂度:O(n²)
平均时间复杂度:O(n²)
空间复杂度:O(1)
是否为稳定排序:Yes
sort in place:Yes
python实现:

class Solution:
    def bubbleSort(self, nums):
        """
        :type nums: List[int]
        :rtype: void
        """
        if len(nums) <= 1:
            return
        # 标志,当某次冒泡没有交换操作时,数组已经有序,无需再进行比较和交换操作
        flag = False
        for i in range(0, len(nums)):
            for j in range(1, len(nums)-i):
                if nums[j] < nums[j-1]:
                    nums[j], nums[j-1] = nums[j-1], nums[j]
                    flag = True
            if not flag:
                break
        return
if __name__ == "__main__":
    nums = [1,3,2,4,6,8,4,5,6,7]
    s = Solution()
    s.bubbleSort(nums)
    print(nums)

相关文章

  • Java,Python冒泡排序

    Java冒泡排序 Python冒泡排序 Java九九乘法表 Python九九乘法表

  • 冒泡排序法

    python排序算法之冒泡排序 首先说一下冒泡排序原理: 冒泡排序(Bubble Sort),是一种计算机科学领域...

  • Python排序算法有哪几种?

    python排序算法有哪些?python中常见的排序算法有:插入排序、选择排序、冒泡排序、快速排序、归并排序、希尔...

  • 冒泡排序

    Python 冒泡排序 冒泡排序(Bubble Sort)也是一种简单直观的排序算法。它重复地走访过要排序的数列,...

  • python链表冒泡排序、二叉树顺序递归遍历、顺序表的快排

    一、python实现链表冒泡排序 - 冒泡排序的概念:冒泡排序是一种交换排序,它的基本思想是:两两比较相邻记录的关...

  • 排序算法详细代码实现

    算法分类 算法时间复杂度 选择排序 插入排序 C++实现 Python实现 冒泡排序 Python实现 归并排序 ...

  • go排序之路(编程基础)

    对python排序有兴趣的可以去我之前的博客查找TopGun Python排序 冒泡排序 pupu.go(思路 每...

  • python实现冒泡排序(BubbleSort)

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

  • 七大排序算法的 Python

    本文用Python实现了插入排序、希尔排序、冒泡排序、快速排序、直接选择排序、堆排序、归并排序、基数排序。 1、插...

  • 八大排序算法的 Python 实现(转)

    本文用Python实现了插入排序、希尔排序、冒泡排序、快速排序、直接选择排序、堆排序、归并排序、基数排序。 1、插...

网友评论

      本文标题:冒泡排序 by Python

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