通过这次冒泡排序两次循环的练习,总结如下:程序的编写要由小向外扩大。
比如有两次循环,那就先给外层的循环赋值个常量,然后将内层的循环逻辑编写对后,再编写外层循环。
下面是我写的冒泡排序的两种实现方式:
aa=[66,99,6,77,55,32] b=1 c=0 d=1 print(len(aa)) while b<len(aa): d=c+1 while d<len(aa): print("第", b, "轮", "第", d, "次比较") print(c) print(d) print(aa[c]) print(aa[d]) if aa[c]<=aa[d]: f=aa[c] aa[c]=aa[d] aa[d]=f print(aa) else: aa[c]=aa[c] aa[d]=aa[d] print(aa) d=d+1 b=b+1 c=c+1
aa=[33,55,44,66] #for lun in range(0,len(aa)-1): for lun in range(1,len(aa)): ci = len(aa) - lun print("第",lun,"轮") for a in range(0,ci): print("第",a+1,"次") print(lun+a) if aa[lun-1]<aa[lun+a]: cc=aa[lun-1] aa[lun-1]=aa[lun+a] aa[lun+a]=cc print(aa) else: print(aa) continue