1 # 冒泡算法:是一种简单排序,重复的遍历要排序的数列,一次比较两种元素,如果顺序错误,就交换两者的位置,重复的的进行知道没有在需要交换
 2 # 步骤如下:
 3 #     冒泡排序算法的运作如下:
 4 #     第一次进行遍历,进行n-1次两两比较,将最大(小)的元素,进行放入最后一位,下一次,对前n-2的元素进行两两进行比较.放入最后第二位....
 5 # 时间复杂度为:(稳定)
 6 #     最小为o(n),即该序列的有序的序列,最大为o(n),即,第一次要n-1,n-2,n-3...即最大为o(n^2)
 7 import random
 8 def produce_num(n):
 9     return_nums=[]
10     for i in range(n):
11         num=random.randint(1,n)
12         return_nums.append(num)
13     return return_nums
14 def bubble_sort_high(list_):
15     # 进行升序排序
16     # 控制循环轮数
17     for i in range(len(list_)-1):
18         # 每一次遍历,两两比较,得到最大(小)的元素放入,当前循环长度的最后一位
19         for j in range(len(list_)-i-1):
20             # 如果取出的元素大于剩余的元素,则进行交换元素
21             if list_[j]>list_[j+1]:
22                 temp=list_[j+1]
23                 list_[j+1]=list_[j]
24                 list_[j]=temp
25     return list_
26 def bubble_sort_low(list_):
27 #     进行降序排序
28     for i in range(len(list_)-1):
29         for j in range(len(list_)-i-1):
30             if list_[j]<list_[j+1]:
31                 temp=list_[j]
32                 list_[j+1]=list_[j]
33                 list_[j]=temp
34     return list_
冒泡排序

相关文章:

  • 2021-09-09
  • 2021-07-31
  • 2021-06-30
猜你喜欢
  • 2022-03-04
  • 2021-06-19
  • 2021-12-09
  • 2021-06-26
  • 2021-12-03
  • 2021-10-08
  • 2022-02-06
  • 2021-09-25
相关资源
相似解决方案