我正在构建一个程序来匹配交易。以下是我目前面临的问题的描述。我需要一些算法方面的帮助。
给定两组具有相似属性(交易日期、账户、交易品种)的交易 A 和 B,我需要找到 A 中交易 a 和 B 中交易 b 的子集,其中 sum(a) 最接近 sum(b)。这里 sum() 是该子集的特定属性(净值)的总和。需要最接近的匹配的原因是,如果我们没有获得完美的匹配(理想情况),我们需要下一个最接近的匹配。注意:sum(a) 可以大于或小于 sum(b)。
我显然想在不使用生成 A 和 B 的所有组合并进行比较的强力方法的情况下做到这一点。
我觉得这可以通过一些动态编程方法来完成,但我无法想出任何具体的东西。将不胜感激任何帮助。
algorithm ×1