假设,我有一个未排序的范围数组.
例如
class CreditRange{
long credits;
int id;
}
现在我想找到,给定信用计数值属于CreditRange中的哪一个.
可能的设置< CreditRange>价值观可以
CreditRange :{id:1,credits:0}
CreditRange :{id:2,credits:100}
CreditRange :{id:3,credits:500}
CreditRange :{id:4,credits:250}
Case 1 : Now when user enters Credits = 50, this range comparator should give
answer as
CreditRange:{id:1,credits:0}
Case 2 : Now when user enters Credits = 300, this range comparator should give
answer as
CreditRange:{id:4,credits:250}
Case 3 : Now when user enters Credits = 600, this range comparator should give
answer as
CreditRange:{id:3,credits:500}
我们可以假设范围数组需要大约1M并且适合内存.我正在寻找一种简单的算法,它只使用标准的JDK集合,没有任何3d派对库和特殊的数据结构,但工作速度相当快.
你会建议什么?