java 圆桌_约瑟夫问题求解释(圆桌问题)Java
publicclassJosephus{publicstaticvoidmain(Stringargs[]){if(args.length!=2)//处理参数数目不正确情况{System.out.println("PleaseInputanumber!");return;}inti,j,n,m;n=Integer.p...
public class Josephus
{
public static void main(String args[])
{
if(args.length != 2) //处理参数数目不正确情况
{
System.out.println("Please Input a number!");
return;
}
int i, j, n, m;
n = Integer.parseInt(args[0]);
m = Integer.parseInt(args[1]);
if (n <= 0 || m <= 0) //处理参数值不正确的情况
{
System.out.println("Paramter must bigger than zero!");
return;
}
int a[] = new int[n];
for (i = 0; i < n; i++) a[i] = i + 1;
int k = 1; //标识处理第k个离开的人
i = -1; //数组下标,下一个为0,即第一个人
while (true) //k等于n表示只剩下一个人了
{
for (j = 0; j < m;) //在圈中数m个人
{
i = (i + 1) % n;
if (a[i] >0) j++; //a[i] >0表示第i个人还没有离开
}
if(k==n) break;
System.out.println("No." + a[i] + " is out!");
a[i] = -1; //表示该人离开
k++;
}
System.out.println("No." + a[i] + " is the winner!");
}
}
主要是我不明白while循环里面语句的意思,希望能过尽量把原理说明白一点。多谢了
展开
java 圆桌_约瑟夫问题求解释(圆桌问题)Java相关推荐
- 小白学习python好还是java好_小白应该学Python还是Java?
Java和Python两门语言都是目前非常热门的语言,可谓北乔峰南慕容,二者不分上下,棋逢对手.但是对于初学者来说,非常困惑,因为时间和精力有限,上手必须要先学一门,到底选那个好呢,今天3分钟带你透彻 ...
- cmd编译java命令_使用CMD命令编译执行java命令
写程序时,有时候需要动态编译执行,经过各种百度及实战,总结一些使用经验. .java文件分为有包名,无包名,又分为有jar包,无jar包,是否指定jre等等. 接下来总结如下: cmd 编译执行jav ...
- selenium java 验证码_如何使用Selenium WebDriver和Java从图像(验证码)中读取文本
我有注册网页,但在最后验证码显示.. 我无法从图像中读取文本.我要提一下代码和输出.. @Test public void loginTest() throws InterruptedExceptio ...
- 精通java图片_面试必备:详解Java I/O流,掌握这些就可以说精通了?
Java IO概述 IO就是输入/输出.Java IO类库基于抽象基础类InputStream和OutputStream构建了一套I/O体系,主要解决从数据源读入数据和将数据写入到目的地问题.我们把数 ...
- 零基础可以学习java吗_零基础真的可以学习java吗?
Java是一个比较抽象的开发语言,涉及知识点比较多,如果自学的话,可以按照五个阶段来学习,先学好基础知识,再逐步扩展,由易到难.要注意视频和书本内容相辅相成,切记不要只看视频而不忽略书本基础的知识要点 ...
- lr java脚本_【上海校区】 LR Java脚本编写方法
之前在某一家银行也接触过java写的性能接口脚本,最近因项目,也需编写java接口性能测试脚本,脑袋一下懵逼了,有点不知道从何入手.随后上网查了相关资料,自己又稍微总结了一下,与大家共同分享哈~ 首先 ...
- 第三方工具监控java进程_前9个免费的Java进程监视工具以及如何选择一种
第三方工具监控java进程 这样就可以运行Java代码了. 也许它甚至可以在生产服务器上运行. 当您做好工作后,我们得到了好消息和令人讨厌的消息. 令人讨厌的消息是,现在开始调试. 就是进行调试和应用 ...
- amd cpu不能在cmd环境下运行java代码_如何在Windows10中配置java的JDK环境
今天给大家分享一下如何配置java的JDK环境.操作步骤如下: 1.下载好 jdk 的安装文件,我下载的是 jdk-10.0.1_windows-x64_bin.exe 这个版本的安装文件: 2.使用 ...
- 银河麒麟配置java环境_中标麒麟系统上安装Java、Eclipse指南.doc
中标麒麟系统上安装Java环境指南 Java_NeoKylin_Install_Guide 2015-01-12 修订记录 序号 版本号 日期 修订人 摘要 1 1.0 目录Content 概述 -- ...
最新文章
- 如何理解JS的单线程?
- 一点一滴培养你的领导气质
- 为何人工智能(AI)首选Python?如何转行Python人工智能?
- 一天一个设计模式(一) - 总体概述
- Ubuntu 16.04下减小/释放/清理VirtualBox虚拟硬盘文件的大小
- Docker仓库搭建
- 在python的dataframe中进行类似于mysql的join操作(持续更新)
- 他曾经负债2.5亿,如今身价超过500亿
- POJ3734-Blocks【EGF】
- 二叉搜索树的第k个节点
- RabbitMQ的web界面解析
- idea新增文件自动添加到版本控制
- 动态规划 —— 最长递增子序列(LIS)
- 对文件、字符串和byte数组进行MD5加密
- win7下安装openSSH
- 有道词典java下载电脑版下载手机版下载安装_网易有道词典下载-网易有道词典 安卓版v8.3.4-PC6安卓网...
- mysql 数据库存放图片路径_mysql数据库可以存图片路径?
- smartdns使用指南_OpenWrt之SmartDNS 使用教程(PLUS+版)
- 天河二号计算机是微型计算机,计算机二级考试真题-PPT-天河二号超级计算机
- Linux系统下Lame环境的搭建
热门文章
- scp有证书的传输,压缩,解压
- mysql查询锁表语句和kill对应的线程
- 【例子】外键约束的创建及例子
- Java是类型安全的语言,而C++是非类型安全的?【解释】
- python(numpy,pandas10)——pandas 合并数据 concat,append
- stateflow错误:Error in port widths or dimensions.
- 为什么IEE754标准中,32位浮点数的指数转换为阶码时需要加上数值为127的偏移量?
- 计算机转集成光学,最新集成光学考试总结.docx
- python爬虫科研数据提取_python爬虫数据提取四之pyquery
- JQuery:多张图片的淡入淡出效果。