1 第二种简单轮询算法
1 定义一个变量保存索引值,然后每赋值一次, 就加1 用索引取值, 这样的话必须 是list才能取到里面的第几个
int f = 0;
for (int j = 0; j < ziNode.size(); j++) {
if (f >= maps.size()) {
f = 0;
}
listAllMap.get(maps.get(f)).add(ziNode.get(j));
f++;
}
2 第二种简单算法 需要运算
-
定义一标识, 记录上次访问的该目标对象(标识应该是索引等,需要有规律性)
-
(该标识 + 1) 取模, 然后获取到该目标对象. 同时更新该目标标识
-
R=5/11 得到余数6 第6个索引 不足计算的补0后再取取余 比如 值是0.4,余数为6
public static void main(String[] args) {
int[] arr = { 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0 };
int index = 4; // 索引:指定起始位置
for (int i = 0; i < 17; i++) {
//取模 为了得到下一个数
int nextIndex = (index + 1) % arr.length;
index = nextIndex;
System.out.println(arr[index] + " ,index=" + index);
}
}