我们有一个有趣的问题需要在这里解决,我们使用的是 C# .NET 4.0,但该语言应该是无关紧要的,因为它是一个数学问题。
问题:我们需要识别 N 维数据集中的差距,并将这些差距准确地报告给用户。
例如,假设我们正在使用 3-D,所以我们有这个Quote
具有 6 个属性的对象:TermFrom, TermTo, AgeFrom, AgetTo, AmountFrom, AmountTo
以及我们需要覆盖的边界:MinTerm = 0, MaxTerm = 5, MinAge = 0, MaxAge = 5, MinAmount = 0, MaxAmount = 5
。假设所有最小值0
和最大值5
只是为了简化示例,尽管它们可能不同。因此,我们需要检查差距的数据是以下数据集:
Quote[] {
{ TermFrom=0, TermTo=3, AgeFrom=0, AgetTo=4, AmountFrom=0, AmountTo=2 },
{ TermFrom=4, TermTo=5, AgeFrom=0, AgetTo=5, AmountFrom=3, AmountTo=5 }
该数据集包含组合的空白:({ Term: 0-5, Age: 4-5, Amount: 0-2 } and { Term: 0-3, Age: 0-5, Amount: 2-5 }, { Term: 4-5, Age: 0-5, Amount: 0-2 }
我认为)
即,如果您想象一个立方体并且数据集是该立方体的一部分,则计算出的所有数据集的总体积必须等于立方体的体积。如果它的体积未满,我们需要确定这个立方体中的间隙在哪里。
所有这些都需要更多的维度:4 和 5,但要可视化要困难得多。我希望有某种数学解决方案可以解决这个问题,我们可以将其转换为 c# 代码。