我在 a 中有一对日期和货币值SortedDictionary<DateTime, decimal>
,对应于在合同定义的复利日期计算到未来的贷款余额。有没有一种有效的方法来找到最接近给定值的日期键?(具体来说,最近的键小于或等于目标)。关键是仅存储值更改时的数据,但有效地回答“x日期的余额是多少?”这个问题。对于范围内的任何日期。
有人问了一个类似的问题(什么 .NET 字典支持“查找最近的键”操作?),当时的答案是“不”,至少来自回答的人,但那是差不多 3 年前的事了。
How to find point between two keys in sorted dictionary提出了天真地遍历所有键的明显解决方案。我想知道是否存在任何内置的框架函数来利用键已经在内存中索引和排序的事实 - 或者是一个内置的框架集合类,它更适合这种查询。