大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
冒泡排序:
思路:
3 5 1 6 2
第一次:找到这些书中最大的一个,并把它放到最后
3、5找到大的数放到第二个位置1、5
5、1找到大的数放到第三个位置1、5、1
5、6找到大的数放到第四个位置
2、6找到大的数放到第五个位置
第五个位置就是最大的
#encoding=utf-8
a=[3,5,1,6,2]
for i in range(len(a)-1):
if a[i] > a[i+1]:
a[i],a[i+1] = a[i+1],a[i]
print (“a:”,a)
D:\test\pytyon3>py -3 a.py
a: [3, 1, 5, 2, 6]
找到最大值了,现在开始找次大值
分析过程:
3 5 1 6 2
第一次:找到这些数中最大的一个,并把它放最后。
3、5找到大的数放到第二个位置
5、1找到大的数放到第三个位置
5、6找到大的数放到第四个位置
2、6找到大的数放到第五个位置
第五个位置就是最大的。
a,b = b,a
temp=a
a=b
b=temp
a= [3,5,1,6,2]
for i in range(len(a)-1):
if a[i]>a[i+1]:
a[i],a[i+1] = a[i+1],a[i]
print(a[-1])
找最大值了,现在次大值,次大值放在倒数第二的位置。
a= [3,5,1,2,6]
for i in range(len(a)-1-1):
if a[i]>a[i+1]:
a[i],a[i+1] = a[i+1],a[i]
print(a[-1])
找第三个最大的数,放到倒数第三个。
a= [3,1,2,5,6]
for i in range(len(a)-1-1-1):
if a[i]>a[i+1]:
a[i],a[i+1] = a[i+1],a[i]
print(a[-3])
找到第四大的书,放到倒数第四个。
for i in range(len(a)-1-1-1-1):
if a[i]>a[i+1]:
a[i],a[i+1] = a[i+1],a[i]
print(a[-4])
剩下的最后一个,就是最小的数,放到第一个
代码:
a=[3,5,1,2,6]
print(a)
for i in range(len(a)-1):#0,1,2,3
for j in range(len(a)-1-i):
if a[j] > a[j+1]:
a[j],a[j+1] = a[j+1],a[j]
print (“a:”,a)
结果:
D:\test\pytyon3>py -3 a.py
[3, 5, 1, 2, 6]
a: [1, 2, 3, 5, 6]
怎么理解:
第一次内层循环的结果就是找到最大的值
第二次内层循环的结果就是找到次大的值,本次将忽略最后一个元素的比较
第二次内层循环的结果就是找到第三大的值,本次讲忽略倒数第二个元素和最后一个元素的比较
…….
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/181655.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...