Python 冒泡排序:简单算法背后的编程思想与实现
冒泡排序(Bubble Sort)是排序算法里面比较简单的一个排序。其基本思想是: 每次比较相邻的两个元素,如果顺序不对则进行交换,并一直重复这样的比较和交换,直到没有要交换的数据为止。 就像水中的气泡,较小的元素经过一次次比较交换逐渐“浮”到数列的顶端。 在 Python 中实现冒泡排序的一般步骤如下: 1. 从列表的第一个元素开始,依次比较相邻的两个元素。 2. 如果前一个元素大于后一个元素,就交换它们的位置。 3. 对整个列表重复步骤 1 和 2,直到在一轮比较中没有元素交换,说明列表已经有序。 以下是 Python 实现冒泡排序的代码示例: ```python def bubble_sort(arr): n = len(arr) for i in range(n): # 标记是否发生交换 swapped = False for j in range(0, n - i - 1): if arr[j] > arr[j + 1] : arr[j], arr[j + 1] = arr[j + 1], arr[j] swapped = True # 如果在一轮遍历中没有发生交换,说明列表已经有序,直接退出 if not swapped: break # 测试示例 arr = [64, 34, 25, 12, 22, 11, 90] bubble_sort(arr) print("排序后的数组:", arr) ``` ######[AI写代码神器 | 338点数解答 | 2024-10-26 20:46:24]
- Python 运行报错:urllib3 网络连接创建失败,原因及排查建议(字节豆包 | 161点数解答 | 2024-10-31 00:39:36)496
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)380
- Python 实战:学生信息列表转字典、遍历、深拷贝及数据修改全流程(GPT | 422点数解答 | 2024-10-29 15:43:54)449
- Python实战:学生成绩列表转字典,深拷贝与数据修改操作全解析(字节豆包 | 254点数解答 | 2024-10-29 16:01:39)440
- Python 编程:开启无限可能的编程之旅!(阿里通义 | 19点数解答 | 2023-12-07 16:15:34)353
- Python代码实现:绘制洁白无瑕水晶玫瑰,附示例代码与注意事项(字节豆包 | 447点数解答 | 2025-11-02 14:37:54)93
- Python 在 Windows 系统下编程实现 RSA 算法对照片加密与解密(字节豆包 | 373点数解答 | 2025-01-05 18:35:28)374
- Python 在 Windows 系统下编程实现 RSA 算法对照片加密与解密:附代码及注意事项(GPT | 1269点数解答 | 2025-01-05 18:37:09)259
- Python在Windows系统下实现RSA算法对手写签名照片加密解密,附代码及关键逻辑 (GPT | 786点数解答 | 2025-01-05 18:37:20)317
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)350
- Java调用Python接口中文乱码?设置UTF - 8编码一招解决!(讯飞星火 | 263点数解答 | 2024-06-06 17:07:59)420
- 解决Java调用Python接口中文乱码问题:设置UTF - 8编码全攻略(讯飞星火 | 160点数解答 | 2024-06-06 17:18:39)443