我是靠谱客的博主 忐忑小蝴蝶,最近开发中收集的这篇文章主要介绍图文详解Python冒泡排序算法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

本篇文章给大家带来了关于python的相关知识,其中主要介绍了关于冒泡排序的相关问题,包括了算法描述、分析、代码实现等等内容,下面一起来看一下,希望对大家有帮助。

推荐学习:python视频教程

1. 算法描述

2. 算法分析

3. 动图展示

4. 代码实现

实现代码:

import timepop_list = [19, 14, 10, 4, 15, 26, 20, 96]print("没排序前的列表为:", pop_list)# 记录开始时间start = time.time()# 外层循环控制轮数for i in range(len(pop_list) - 1):
    # 内层循环控制比较次数
    for j in range(len(pop_list) - i - 1):
        # 如果前一个数字比后一个数字大,就交换位置
        if pop_list[j] > pop_list[j + 1]:
            # python特有交换位置方式
            pop_list[j], pop_list[j + 1] = pop_list[j + 1], pop_list[j]print("排序好的列表为:", pop_list)# 记录结束时间end = time.time()print("算法总耗时:", end - start)
登录后复制

运行结果:

在这里插入图片描述

5. 算法升级

实现代码:

import timedef bubble_sort(pop_list):
    for j in range(len(pop_list) - 1, 0, -1):
        count = 0
        for i in range(0, j):
            if pop_list[i] > pop_list[i + 1]:
                pop_list[i], pop_list[i + 1] = pop_list[i + 1], pop_list[i]
                count += 1
        if count == 0:
            returnpop_list = [19, 14, 10, 4, 15, 26, 20, 96]print("没排序前的列表为:", pop_list)# 记录开始时间start = time.time()bubble_sort(pop_list)print("排序好的列表为:", pop_list)# 记录结束时间end = time.time()print("算法总耗时:", end - start)
登录后复制

运行结果:
在这里插入图片描述

6. 时间复杂度分析

推荐学习:python视频教程

以上就是图文详解Python冒泡排序算法的详细内容,更多请关注靠谱客其它相关文章!

最后

以上就是忐忑小蝴蝶为你收集整理的图文详解Python冒泡排序算法的全部内容,希望文章能够帮你解决图文详解Python冒泡排序算法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(62)

评论列表共有 0 条评论

立即
投稿
返回
顶部