冒泡排序

冒泡排序基本思想:
列表每相邻的两个数,如果前面的比后面的大,则交换这两个数
目的:排除一个升序的列表
一趟排序完后,无序区会减少一个数,有序区会增加一个数

外层循环 确定走多少趟 列表长度-1
内层循环 比较的次数 列表长度-1-当前第几趟
# lst=[0,34,-3,12,-5,66,333,2]
#
# for i in range(len(lst)-1):
#     for j in range(len(lst)-1-i):
#         if lst[j]>lst[j+1]:  #升序
#         # if lst[j]<lst[j+1]:   #降序
#             lst[j],lst[j+1]=lst[j+1],lst[j]
# print(lst)
#while 循环版的
lst=[0,34,-3,12,-5,66,333,2]
i=0
j=0
while i<len(lst)-1:
    while j<len(lst)-1-i:
        if lst[j]>lst[j+1]:
            lst[j],lst[j+1]=lst[j+1],lst[j]
        j+=1
    i+=1
print(lst)

 

 
posted @ 2022-06-24 21:45  爱coding的果妈  阅读(25)  评论(0)    收藏  举报