用python的for循环写冒泡排序


题目:利用for循环,完成a=[1,7,4,89,34,2]的冒泡排序(冒泡排序:小的排前面,大的排后面。)

  第一种:可以看到每次排序的结果

 1 a = [100,97,4,89,34,2]  2 n = 0  3 for n in range(0,5):  4     for i in range(0,len(a)-1):  5         if a[i] > a[i+1]:  6             a[i+1],a[i] = a[i],a[i+1]  7             # change = a[i]
 8             # a[i] = a[i+1]
 9             # a[i+1] = change
10     n += 1
11     print("第{}次排序结果:{}".format(n,a))

  运行结果:  

第1次排序结果:[97, 4, 89, 34, 2, 100] 第2次排序结果:[4, 89, 34, 2, 97, 100] 第3次排序结果:[4, 34, 2, 89, 97, 100] 第4次排序结果:[4, 2, 34, 89, 97, 100] 第5次排序结果:[2, 4, 34, 89, 97, 100]

  第二种:代码简洁

a=[100,97,4,89,34,2] for i in range(len(a)-1): for j in range(len(a)-i-1): if a[j] > a[j+1]: a[j+1],a[j] = a[j],a[j+1] print(a)

  运行结果:[2, 4, 34, 89, 97, 100]

 

==================================================================================

尊重原创,若需转载请注明出处:https://www.cnblogs.com/lizhe860/

================================================================================== 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM