假设我有一系列整数,从0开始(始终从0开始)到3。现在,我有一个整数数组,它将包含那些序列循环后的结果,从某个点开始。例如:
一个包含10个元素的数组,序列是0到3,从2开始,应该产生2、3、0、1、2、3、0、1、2、3。
一个包含5个元素的数组,序列是0到5,从5开始,应该产生5、0、1、2、3。
一个包含5个元素的数组,序列是0到10,从3开始,应该产生3、4、5、6、7。
我脑子一片空白!如果您知道数组大小、序列中的最大数字和起始值,最好的方法是创建这个数组是什么?
我最好的尝试是:
一个包含10个元素的数组,序列是0到3,从2开始,应该产生2、3、0、1、2、3、0、1、2、3。
一个包含5个元素的数组,序列是0到5,从5开始,应该产生5、0、1、2、3。
一个包含5个元素的数组,序列是0到10,从3开始,应该产生3、4、5、6、7。
我脑子一片空白!如果您知道数组大小、序列中的最大数字和起始值,最好的方法是创建这个数组是什么?
我最好的尝试是:
private static int[] CreateIndexers(int index, int size, int players)
{
var indexers = new int[size];
for (int i = 0; i < size; i++)
{
var division = i / players;
var newInt = division + i >= players ? ((division + i) - players) : division + i;
indexers[i] = newInt;
}
return indexers;
}