xpresslink
2018-08-30 18:11:49 +08:00
def check_sort(arg_list: list):
□□□□if arg_list[-2] == arg_list[-1]:
□□□□□□□□arg_list[-2] += 0.1
□□□□if arg_list == sorted(arg_list, reverse=True):
□□□□□□□□return 'DESC'
□□□□if arg_list == sorted(arg_list):
□□□□□□□□return 'ASC'
□□□□else:
□□□□□□□□return 'None'
source_list = [9,4,5,6,5,4,7,7,6]
result = {'ASC': [], 'DESC': []}
length = len(source_list)
temp_list = source_list[:2]
i = 2
while True:
□□□□sort_status = check_sort( temp_list + [source_list[i]])
□□□□if sort_status == 'None':
□□□□□□□□result[check_sort(temp_list)].append([temp_list[0], temp_list[-1]])
□□□□□□□□temp_list = [temp_list[-1], source_list[i]]
□□□□else:
□□□□□□□□temp_list.append(source_list[i])
□□□□i += 1
□□□□if length == i:
□□□□□□□□result[check_sort(temp_list)].append([temp_list[0], temp_list[-1]])
□□□□□□□□break
print(result)
{'ASC': [[4, 6], [4, 7]], 'DESC': [[9, 4], [6, 4], [7, 6]]}