冒泡排序——Python实现

Posted 宇宙之一粟

tags:

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

冒泡排序Python实现

# -*- coding: utf-8 -*-
# @Time    : 2019/10/28 19:41
# @Author  : yuzhou_1shu
# @Email   : yuzhou_1shu@163.com
# @File    : bubble_sort.py
# @Software: PyCharm


def bubble_sort(collection):

    # 求序列的长度
    length = len(collection)
    # 从序列中第一个元素开始以此跟后一个比较
    for i in range(length - 1):
        swapped = False
        for j in range(length - i - 1):
            if collection[j] > collection[j+1]:
                collection[j], collection[j+1] = collection[j+1], collection[j]
                swapped = True
        if not swapped:
            break   # 如果已经排序好了,退出循环
    return collection


if __name__ == "__main__":
    import time

    user_input = input("请输入数字,并以英文逗号隔开: ").strip()
    unsorted = [int(item) for item in user_input.split(",")]
    start_time = time.process_time()
    print("排序后:", *bubble_sort(unsorted), sep=",")
    print(f"排序消耗时间: {time.process_time() - start_time}秒")

以上是关于冒泡排序——Python实现的主要内容,如果未能解决你的问题,请参考以下文章

python实现二分查找与冒泡排序

python实现时间复杂度平均为N^2的冒泡选择插入排序

python实现时间复杂度平均为N^2的冒泡选择插入排序

python实现时间复杂度平均为N^2的冒泡选择插入排序

python实现时间复杂度平均为N^2的冒泡选择插入排序

八大排序算法的python实现冒泡排序