反向数组但不是hashmap

时间:2013-03-02 00:28:28

标签: java arrays indexing hashmap

在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);
}

还有其他解决方案吗?宁愿选择更快的。

1 个答案:

答案 0 :(得分:0)

是的,您可以创建自己的哈希函数或针对您的案例研究特定的哈希函数。这取决于值的结构以及这是否真的是程序中的瓶颈。