1 Star 0 Fork 0

pywjh / BrainBurningRecord

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
冒泡排序.py 1.31 KB
一键复制 编辑 原始数据 按行查看 历史
wjh 提交于 2021-07-16 18:09 . 插入排序readme
def bubble_sort(array=[]):
"""
冒泡排序
遍历,索引i值与索引i+1值相比,大于就交换
第一次遍历
6, 7, 8, 1, -1
------------------一次大小交换
6, 7, 8, -1, 1
------------------第二次遍历
6, 7, -1, 8, 1
------------------
6, 7, -1, 1, 8
------------------第三次遍历
6, -1, 7, 1, 8
------------------
6, -1, 1, 7, 8
------------------第四次遍历
-1, 6, 1, 7, 8
------------------
-1, 1, 6, 7, 8
is_sorted = True
结束
"""
# 无序数列的边界,每次比较只需要比到这里为止
sort_border = len(array)-1
for i in range(len(array)-1):
# 有序标记,每一轮的初始是true
is_sorted = True
for j in range(sort_border):
if array[j] > array[j+1]:
array[j], array[j+1] = array[j+1], array[j]
# 有元素交换,所以不是有序,标记变为false
is_sorted = False
# 把无序数列的边界更新为最后一次交换元素的位置
sort_border = j
if is_sorted:
break
my_array = list([3, 4, 14, 1, 5, 6, 7, 8, 1, -1, 0, 9, 11])
bubble_sort(my_array)
print(my_array)
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Java
1
https://gitee.com/wjhzy/BrainBurningRecord.git
git@gitee.com:wjhzy/BrainBurningRecord.git
wjhzy
BrainBurningRecord
BrainBurningRecord
main

搜索帮助

344bd9b3 5694891 D2dac590 5694891