例如,如果我有字符串“ 4K892”,并将其放入每个字符分开的列表中。如何使用此顺序“ 23456789TJQKA”打印最高字符
伪代码:
list = [4, K, 8, 9, 2]
Highestcharacter(list) = 'K'
Run Code Online (Sandbox Code Playgroud)
您可以使用max函数的key参数,例如
慢版本:
order = '23456789TJQKA'
result = max('4K892', key=order.index)
print(result)
Run Code Online (Sandbox Code Playgroud)
快速版本:
order = '23456789TJQKA'
lookup = {v : i for i, v in enumerate(order)}
result = max('4K892', key=lookup.get)
print(result)
Run Code Online (Sandbox Code Playgroud)
请注意,快速和慢速是指功能的复杂性,慢速版本是O(n*2),快速版本是O(n)。