1 def mySort(my_list):
2
3 newList = []
4 # 复制传进来的列表(不改原列表)
5 copy_list = my_list[:]
6 # 列表中未pop完都运行
7 while len(copy_list) > 0:
8 # 假设第一个为最小值
9 min_idx = 0
10 mi = copy_list[0]
11 # 定义遍历下标
12 idx = 0
13 # 遍历列表所有元素
14 for i in copy_list:
15 # 如果取到的元素比假设最小值还小,更新最小值,更新下标
16 if i < mi:
17 mi = i
18 min_idx = idx
19 # 遍历是下标同步递增
20 idx += 1
21 # 把最小值从原列表中按下标pop出来
22 copy_list.pop(min_idx)
23 # 把循环后判断的最小值加到新列表后
24 newList.append(mi)
25
26 return newList
27
28
29 list1 = [5, 1, 2, 1, 8, 4, 2]
30 print(mySort(list1))