「java出圈」出圈的定义
本篇文章给大家谈谈java出圈,以及出圈的定义对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
关于约瑟夫环问题,用java 编写程序,输出n个人出圈的顺序,书上的程序代码如下,但是有几点我搞不明白
你这个好麻烦啊, 理解 队列 和 桟 的区别
队伍 先进先出 FIFO
桟 先进后出 LIFO
本程序明显是队伍!!!
import java.util.* ;
public class T {
public static void main(String[] args) {
ListInteger list = new LinkedListInteger();
//模拟15个人,编号是1-15
for(int i=1 ; i=15 ; i++) {
list.add(i);
}
//模拟 叫到7的人出圈
show(list , 7);
}
public static void show(ListInteger list , int n){
int i = 1 ;//每次报的数字
int count = 1 ;//记录第几次出圈
while(true){
//当list长度为1的时候代表就剩下1个人
if(list.size()==1){
System.out.println("第"+count+++"次是"+list.get(0));
return ;
}
//每次获取队里第一个人
int value = list.get(0);
//报完数后移开该人
list.remove(0);
//如果报数的人报的数字为n ,则打印
if(i == n) {
i = 1 ;
System.out.println("第"+count+++"次是"+value);
}else {
//如果报数的人报的数字不是n ,将该人排到队伍的后面,以便下次继续叫号
list.add(value);
//产生下次报数的数字
i++ ;
}
}
}
}
java约瑟夫出圈问题
public class YueSeFuCircle
{
public static void main(String[] args)
{
int n = 100;//总共多少人
int kill = 3;//要出圈的数字
int winner = 0;
for (int i = 2; i = n; i++)
{
winner = (winner + kill) % i;
System.out.println(winner);
}
System.out.println("Winner is:" + (winner + 1));
}
}
【JAVA】15个红球15个绿球排成一圈,从第一个球开始数
你这个,从第4个就不对了
你可以这样,
a). 大小为30的数组,元素全为1
b). 循环判断元素如果为1就把球的计数变量+1,否则跳过;
c). 若计数变量为13,就打印下标,元素置为0,计数变量置0;
d). 循环完数组一次,就把数组元素求和,若为15就停止循环;
c). 这时输出的15个下标+1就是你要染成红色的球
java出圈的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于出圈的定义、java出圈的信息别忘了在本站进行查找喔。