我一直在阅读Core Python编程书,作者展示了一个例子:
(4, 5) < (3, 5) # Equals false
Run Code Online (Sandbox Code Playgroud)
所以,我想知道,它是如何/为什么它等于假?python如何比较这两个元组?
顺便说一下,书中没有解释.
是否有一个不太复杂的方法来实现使用两个标准的优先级队列?队列获取与2个中创建ComparatorS和提供(除了add)的操作poll1()和poll2(),其中每个删除和返回根据相应的比较器的最小元素.
我的用例是分支定界优化.当您获得无限时间时,以最佳界限扩大候选人可证明是最佳的.假设无限时间可证明是错误的.
严格遵循这一策略通常最终在截止日期到来时根本没有解决方案.一个简单的创可贴首先是将搜索引向解决方案,然后切换到最佳约束策略.这是相当不令人满意的,因为发现的第一个解决方案可能是任意低质量的.
这就是为什么我想使用两个标准队列:在一个步骤中,展开最佳边界候选者,在另一个步骤中,根据一些启发式扩展"最佳外观"候选者.
另一种可能的用途是用于帕累托最优化.