我将使用哪种算法来确定哪些交换依赖于另一个交换?
规则
这是一个例子
掉期队列
A)蕨(Fern)以5美元的价格从约翰尼(Johnny)购入苹果
B)约翰尼以140美元的价格将2个桃子交易给比尔
C)弗恩(Fern)以10美元的价格将1个桃子交易给比尔(Bill)
实际依赖项
A-> B
C
一旦我知道了依赖项,就可以使用拓扑排序来确定在哪个批处理中要处理的顺序。我该如何编写代码来自动确定依赖关系?
如果当前状态下的余额足够,请进行交换,如果找不到需要首先完成的交换。
答案 0 :(得分:1)
我相当确定,尝试将其组织为尽可能少的批次将是NP完整的。但是,贪婪的解决方案将相当容易地提供相当好的解决方案。
我的意思是,您可以运行所有交换,将那些具有可用资源的交换添加到当前批次中。运行那些交换。重复下一批。继续直到所有交换用尽。