我有一个将 2 个对象作为参数的函数:a
并且b
该函数检查(使用非常长的算法)这些对象中的哪一个更好。
如果 a 更好,则返回 -1,如果 b 更好,则返回 1,如果并列则返回 0
我的问题是:
我在一个列表中有 21 个这样的对象。
我需要找出,使用上面的函数(函数不能更改,唯一的方法是比较 2 个对象,这是一个非常复杂且冗长的算法),这 21 个对象中哪个是最好的。
我尝试了好几个小时思考如何有效地做到这一点而不进行太多次相同的比较,如何编写一个算法来找出哪个是最好的(如果它们中的两个是并列的并且它们都是最好的,它不会拿哪一个都没关系,虽然我认为平局是不可能的),而且我想不出什么好东西。
函数的名称是handCompare(a, b)
对象在名为 的列表中找到Combos
,len(combos)
是 21 我需要一个算法来找出组合列表中的最佳项目
感谢阅读,希望对您有所帮助:)