在Java中,我有一个未排序的int[] values = new int[100];
数组。所有值都是唯一的(不同的),它们是无法比较的(无法排序)。我可以构造一种反转函数,如果我指定该值,它会给出数组中某个值的索引吗?
目前使用hashmap完成它:
IntIntMap indices = new IntIntOpenHashMap(100, 1);
for (int i = 0; i < 100; i++) {
indices.put(values[i], i);
}
还有其他解决方案吗?宁愿选择更快的。
答案 0 :(得分:0)
是的,您可以创建自己的哈希函数或针对您的案例研究特定的哈希函数。这取决于值的结构以及这是否真的是程序中的瓶颈。