我有一些账户,其中既有正余额也有负余额,并且有一些账户之间存在抵押关系。抵押关系使得那些有负余额的账户有权从抵押账户中取回资金来弥补亏损。
我想要找到最佳的顺序来行使这种取回资金的权利。
1 2 3
A 1000 | -1000 -500 -500
B 1000 | -1000
在给定的例子中,账户A和B的余额为1000,账户1、2、3按优先级进行覆盖(1 > 2 > 3)。我想通过在1、2、3上分配A和B的资金来尽可能多地覆盖账户,同时遵守优先级。
在这个特定的例子中,选择A1作为我的第一对只会覆盖1000,但如果我选择B1、A2、A3,则可以获得覆盖2000的最佳解决方案。
这种优化问题被称为什么,有哪些算法可以解决它?