Python 十大排序之冒泡排序

本文深入讲解了冒泡排序的基本原理,通过示例演示了排序过程,并提供了Python代码实现。每趟排序只归位一个数字,需排n-1趟,最终实现从小到大的排序。

一、冒泡排序原理:
重复比较相邻元素,如果逆序则交换,大的沉底,小的上浮;
eg:
arr=[6,3,5,2,1]
第一趟:[3,5,2,1,6] #已归位:6
第二趟:[3,2,1,5,6] #已归位:5,6
第三趟:[2,1,3,5,6] #已归位:3,5,6
第四趟:[1,2,3,5,6] #已归位:2,3,5,6
#每一趟排序只归位一个数字,需排n-1趟;每趟归位的数字不参与比较,每趟只拍n-1-i(i为已走的趟数)
二、Python代码实现:

排序函数:

def bubble_sort(arr):
for i in rang(len(arr)-1):
for j in range(len(arr)-1-i):
if arr[i]>arr[i+1]:
arr[i],arr[i+1]=arr[i+1],arr[i]
return arr

调用函数:

if name==‘main
arr=[6,3,5,2,1]
bubble_sort(arr)
print(arr)

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值