我们假设我们的序列是
3,9,7,1然后重复3,9,7,1等等......
我们如何检查例如第605个元素的值(在这种情况下,它将是3)
PS:独立"我的意思是我们找不到数学公式。
提前致谢:P
public static int determine_value_at_position_of_an_array(List<int> sequence, int power)
{
int counter = 1; /// This index is going to value of power.
int counter_2 = 0; /// This variable is responsible for jumping between [0..sequence.count-1]
int current_value = 0;
for (; counter<= power; counter++)
{
current_value = sequence[counter_2];
if (counter_2==sequence.Count-1) /// if we're at last element, then go to 1st
{
counter_2 = 0;
}
else
{
counter_2++;
}
}
return current_value;
}
答案 0 :(得分:0)
如果您知道序列的重复部分有多少元素(在您的示例4中),您可以使用模运算符(主要是%或mod)来接收第N个元素。这里:605%4 = 1 =&gt;第一个元素=&gt; 3。
EDIT添加了一些代码
int valueAtN(List<Integer> sequence, int n) {
return sequence.get(n % sequence.size());
}