1. 贪心算法问题: 根据身高重建队列
# encoding=utf-8
"""
Date:2019-07-18 13:43
User:LiYu
Email:liyu_5498@163.com
"""
info = [
[7, 0], [4, 4], [7, 1],
[5, 0], [6, 1], [5, 2]
]
def high_sort(info):
# 先按照身高从大到小排序[[7, 0], [7, 1], [6, 1], [5, 0], [5, 2], [4, 4]]
high_sort_info = sorted(info, key=lambda x: x[0], reverse=True)
new_info = []
for i in range(len(high_sort_info)):
# 如果该人前面比他高的等于他的位次,则不变
if high_sort_info[i][1] == i:
new_info.insert(i, high_sort_info[i])
# print(new_info)
# 不等于,则他的位置应该为索引是 比他高的人数 的位置
else:
new_info.insert(high_sort_info[i][