Java 将数字映射到另一个数字
我有一个应用程序有两种模式:进入模式和返回模式 在输入模式下,当输入值时,会增加位置,并且该位置与输入的数字相关联 例如,值已输入,且pos=0: 二十三 八十 67 三十四 职位将是 23=1 80=2 67=3 34=4 如果有人在返回模式下输入值34,则应返回4 如果有人在返回模式下输入值23,则应返回1 这就像一个数字映射 尝试使用函数 例如,输入4个值需要一个三次函数 这个三次函数将值关联起来上面是临床数字Java 将数字映射到另一个数字,java,algorithm,Java,Algorithm,我有一个应用程序有两种模式:进入模式和返回模式 在输入模式下,当输入值时,会增加位置,并且该位置与输入的数字相关联 例如,值已输入,且pos=0: 二十三 八十 67 三十四 职位将是 23=1 80=2 67=3 34=4 如果有人在返回模式下输入值34,则应返回4 如果有人在返回模式下输入值23,则应返回1 这就像一个数字映射 尝试使用函数 例如,输入4个值需要一个三次函数 这个三次函数将值关联起来上面是临床数字 y = -16.05735 + 1.1394 * x - 0.01
y = -16.05735 + 1.1394 * x - 0.01966465 * x ^ 2 + 0.0001030451 * x ^ 3
4 = -16.05735 + 1.1394 * 34 - 0.01966465 * 34 ^ 2 + 0.0001030451 * 34 ^ 3
还要尝试遍历在名为number[]的数组中输入的数字
数字[0]=23
数字[1]=80
等等
我想知道是否有一种更快的方法可以返回输入的数百万个数字的关联号码。使用
foo (int number_enter) {
for {int i = 0; i <number.length; i ++) {
if (number_enter == number [i]) {return i;}
}
}
foo (34); // return 4
Map<Integer, Integer> map = new HashMap<>();
void addNumberAtPosition(int number, int position) {
map.put(number, position);
}
int getPositionOfNumber(int number) {
return map.getOrDefault(number, -1);//return -1 if number is not present.
}