java 约瑟夫环 数组实现 已测试
来源:互联网 发布:萨德事件 知乎 编辑:程序博客网 时间:2024/06/01 08:38
class YueSeFu
{
public static int circleRun(int person , int num)
{
int array[] = new int[person];
int flag = 0;
int person_flag=0;
//-----------------初始化数组--------------------
for (int i = 0; i < person ; i++ )
{
array[i] = i+1;
}
//----------------执行约瑟夫环规则---------------------
while(person>1)
{
for (int i = 1; i <= num ; i++, flag++ )
{
if (flag == array.length)
{
flag = 0;
}
while(array[flag]==0)
{
flag++;
if (flag == array.length)
{
flag = 0;
}
}
if (i==num )
{
array[flag] = 0;
person--;
}
}
}
//----------------遍历数组,不为零则返回--------------------
for (int i = 0; i<array.length ; i++ )
{
if (array[i]!=0 )
{
person_flag = array[i];
}
}
System.out.println("最后一个人的编号为:"+ circleRun(14,3));
System.out.println("最后一个人的编号为:"+ circleRun(11,3));
System.out.println("最后一个人的编号为:"+ circleRun(2,3));
System.out.println("最后一个人的编号为:"+ circleRun(2,2));
System.out.println("最后一个人的编号为:"+ circleRun(3,3));
}
{
public static int circleRun(int person , int num)
{
int array[] = new int[person];
int flag = 0;
int person_flag=0;
//-----------------初始化数组--------------------
for (int i = 0; i < person ; i++ )
{
array[i] = i+1;
}
//----------------执行约瑟夫环规则---------------------
while(person>1)
{
for (int i = 1; i <= num ; i++, flag++ )
{
if (flag == array.length)
{
flag = 0;
}
while(array[flag]==0)
{
flag++;
if (flag == array.length)
{
flag = 0;
}
}
if (i==num )
{
array[flag] = 0;
person--;
}
}
}
//----------------遍历数组,不为零则返回--------------------
for (int i = 0; i<array.length ; i++ )
{
if (array[i]!=0 )
{
person_flag = array[i];
}
}
return person_flag
}
public static void main(String[] args)
{System.out.println("最后一个人的编号为:"+ circleRun(14,3));
System.out.println("最后一个人的编号为:"+ circleRun(11,3));
System.out.println("最后一个人的编号为:"+ circleRun(2,3));
System.out.println("最后一个人的编号为:"+ circleRun(2,2));
System.out.println("最后一个人的编号为:"+ circleRun(3,3));
}
}
运行结果如下:
阅读全文
1 0
- java 约瑟夫环 数组实现 已测试
- Java 数组实现约瑟夫环
- 约瑟夫环java数组实现
- java数组实现约瑟夫
- 数组实现约瑟夫环
- 约瑟夫环数组实现
- 约瑟夫环数组实现
- 约瑟夫环数组实现
- 约瑟夫环--数组实现
- 数组实现约瑟夫环
- 约瑟夫环的数组实现
- 约瑟夫环(数组模拟实现)
- 利用数组实现约瑟夫环
- 约瑟夫环的数组实现
- 用数组实现约瑟夫环
- java实现约瑟夫环
- java实现约瑟夫环
- java 实现约瑟夫环
- mdio总线
- 嵌入式Linux设备读取CPU温度的方法
- 设置软触发后调试结果
- ios语言全球化,本地化工具,一键本地化
- IMAX把VR生意做到了电影院:开VR街机,带来双重娱乐体验
- java 约瑟夫环 数组实现 已测试
- 【Linux】IPC通信之共享内存
- java基础教程:循环流程控制(11)
- LeetCode: Maximim SubArray
- 通过ESP8266手机或电脑浏览器网页能控制远程任意组任意路继电器开关并收发单片机指令 测试OK
- JS中Unix时间戳转换日期格式
- 如何让一个Java类或者方法过时
- BUG_tomcat启动报错Neither the JAVA_HOME nor the JRE_HOME environment variable is defined
- Android如何判断app是否是每日第一次登录