假设我有一组固定的数字,恰好是排序的:
static readonly int[] numbers = new int {
1, 200, 204, 228, 298, 300, 331, 332, ... 2983
};
我如何有效地找到小于或等于任意值的最大数。我试图创建的功能如下:
public int LessThanOrEqualTo(int n)
{
// ???
}
最简单的方法是每次迭代集合。但是,我正在寻找一种方法来加快速度。我可以将其转换为另一种格式,例如 an IDictionary
,但想不出一个聪明的方法来临时做这件事。