java反转数组,但不是哈希映射
在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 楼答案
是的,你可以创建自己的哈希函数,或者为你的案例研究一个特定的哈希函数。这取决于价值观的结构,以及这是否真的是程序中的瓶颈