Python连载二:使用Python进行冒泡排序

不封装函数:
先说一下冒泡排序的是怎么样比较的。冒泡排序是不断地将当前元素与后一个元素进行比较,如果当前元素较小,则调换当前元素与后一个元素的位置,否则保持不变;假设需要排序的元素一共有n个,从第一个元素开始,对后续的(n-2)元素进行上述比较,最终的排序结果中,最后的元素是最大值。

list1 = [12,34,56,23,33,89,32,45,31]
for i in range(1,len(list1)):         #遍历,遍历的次数为列表长度-1,因为冒泡排序不和自身比较
    for j in range(len(list1)-i):   		#遍历,遍历的次数为列表长度-i,-i是因为前边已经比较过的后边就需要遍历比较了
        if list1[j] > list1[j+1]:             #如果前边的值大于后边的值,那么交换位置
            list1[j],list1[j+1] = list1[j+1],list1[j]
print(list1)

函数封装版

def maopao(List):
    for i in range(1,len(List)):
        for j in range(len(List)-i):
            if List[j] > List[j+1]:
                List[j],List[j+1] = List[j+1],List[j]
    return List
list1 = [12,34,56,23,33,89,32,45,31]
print(maopao(list1))

结果:

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值