"""冒泡排序""" import random #导入随机数包 list2=[] for one in range(1,11): number=random.randint(1,100)#随机产生10个100以内的数 list2.append(number) print(f'冒泡排序前,list2={list2}') # list2=[82, 68, 54, 99, 14] for i in range(len(list2)-1): #控制比较多少轮 for j in range(len(list2)-1-i):#控制每轮比较多少次 if list2[j]>list2[j+1]:#如果前面的数比后面的数大,则两数互换 list2[j],list2[j+1]=list2[j+1],list2[j] print(f'冒泡排序后,list2={list2}') #debug调试,关键字介绍 #step over 下一步,如果遇到子函数,把整个子函数作为一步 #step into 下一步,如果遇到子函数,进入函数内部一步步执行(所有函数) #step into my code 下一步,如果遇到子函数,进入函数内部一步步执行(只执行自定义的函数) #step out 在子函数中不想执行了就按一下跳出子函数 #run to cursor 跳转到打断点的那一行
#每个数两两比较,如果前面的数比后面的数大,则交换位置,之后继续向后比较 #5,4,3,2,1 原始数据,n个数,第一轮比较,比n-1次 #4,5,3,2,1 #第一次比较,将5和4的位置互换 #4,3,5,2,1 #第二次比较,将5和3的位置互换 #4,3,2,5,1 #第三次比较,将5和2的位置互换 #4,3,2,1,5 #第四次比较,将5和1的位置互换 #第二轮,比较n-2次 #3,4,2,1,5 第一次比较,将4和3的位置互换 #3,2,4,1,5 第二次比较,将4和2的位置互换 #3,2,1,4,5 第三次比较,将4和1的位置互换 #第三轮,比较n-3次 #2,3,1,4,5 第一次比较,将3和2的位置互换 #2,1,3,4,5 第二次比较,将3和1的位置互换 #第四轮,比较n-4次 #1,2,3,4,5 第一次比较,将2和1的位置互换
"""冒泡排序""" import random #导入随机数包 list2=[] for one in range(1,11): number=random.randint(1,100)#随机产生10个100以内的数 list2.append(number) print(f'冒泡排序前,list2={list2}') # list2=[82, 68, 54, 99, 14] for i in range(len(list2)-1): #控制比较多少轮 for j in range(len(list2)-1-i):#控制每轮比较多少次 if list2[j]>list2[j+1]:#如果前面的数比后面的数大,则两数互换 list2[j],list2[j+1]=list2[j+1],list2[j] print(f'冒泡排序后,list2={list2}') print('-'*50) #debug调试,关键字介绍 #step over 下一步,如果遇到子函数,把整个子函数作为一步 #step into 下一步,如果遇到子函数,进入函数内部一步步执行(所有函数) #step into my code 下一步,如果遇到子函数,进入函数内部一步步执行(只执行自定义的函数) #step out 在子函数中不想执行了就按一下跳出子函数 #run to cursor 跳转到打断点的那一行 list3=[] for one in range(1,11): number=random.randint(1,100)#随机产生10个100以内的数 list3.append(number) print(f'sorted排序前,list3={list3}') #sorted()方法的返回值是排序后的对象,排序后的对象是一个新的对象,不影响原对象 list3_new=sorted(list3) print(f'sorted排序后,list3_new={list3_new}') print(f'sorted排序后,list3={list3}') print('-'*50) list4=[] for one in range(1,11): number=random.randint(1,100)#随机产生10个100以内的数 list4.append(number) print(f'sorted排序前,list4={list4}') #sorted()方法的返回值是排序后的对象,排序后的对象是一个新的对象,不影响原对象 list4_new=sorted(list4,reverse=True)#倒序排序 print(f'sorted/reverse排序后,list4_new={list4_new}') print(f'sorted/reverse排序后,list4={list4}') print('-'*50) #冒泡排序算法 list5=[] for one in range(1,11): number=random.randint(1,100)#随机产生10个100以内的数 list5.append(number) print(f'sort()排序前,list5={list5}') list5.sort() #sort()方法没有返回值,排序后的对象还是原来的对象 print(f'sort()排序后,list5={list5}') list5.sort(reverse=True) #sort()方法没有返回值,排序后的对象还是原来的对象 print(f'sort()/reserve排序后,list5={list5}') print('-'*50)