我是靠谱客的博主 忐忑小蝴蝶,这篇文章主要介绍图文详解Python冒泡排序算法,现在分享给大家,希望可以做个参考。

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

推荐学习:python视频教程

1. 算法描述

2. 算法分析

3. 动图展示

4. 代码实现

实现代码:

复制代码
1
2
3
4
5
6
7
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. 算法升级

实现代码:

复制代码
1
2
3
4
5
6
7
8
9
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冒泡排序算法内容请搜索靠谱客的其他文章。

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

评论列表共有 0 条评论

立即
投稿
返回
顶部