年近半百自学Python之冒泡排序法

384 篇文章 17 订阅
368 篇文章 15 订阅

如果不用sort()进行排序,而是手动进行排序的话应该如何编写程序呢?

这就是经典冒泡排序法。


nums=[5,1,7,6,8,2,4,3]

for j in range(0,len(nums)-1): # 轮数,如果有8个数字,需要7轮来完成排序。

for i in range(0,len(nums)-1-j): # 每轮比较的次数

if nums[i]>nums[i+1]: # 两两比较,如果nums[i]>nums[i+1],则两数互换位置

a=nums[i] # 利用a进行数字互换

nums[i]=nums[i+1]

nums[i+1]=a

pass

pass

pass

print(nums)

示意图如下:

image.png
对于新手小白想更轻松的学好Python基础,Python爬虫,web开发、大数据,数据分析,人工智能等技术,这里给大家分享系统教学资源,架下我尉(同英): 2763 177 065 【教程/工具/方法/解疑】

冒泡排序法

第一轮得到所有数字中的最大值,排在列表的最右边,以后每轮得到剩余数的最大值从右往左依次排列。

冒泡排序主要是理解其中的运行机制。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值