循环报数 Java实现
输入1个数字和多个字符,中间均以空格隔开。假设数字取值为m(范围1~9),后面字符个数为n。假设n个字符围成一圈,从第一个字母开始循环报数,当数到m以后,第m个字母就出列,直到这n个字母全部出列。最后,按照出列的顺序输出这些字母,中间仍以空格隔开。取值范围:m为1到9, 字符个数n大于1小于20。
网上很多方法感觉好乱,很多所谓的Java都是根据c的思想完成的没有Java的灵活性。
附代码:
import java.util.*;
public class Recycle {
static Scanner scanner = new Scanner(System.in);
static int num;
static String str;
static LinkedList<String> list = new LinkedList<String>();
static LinkedList<String> result = new LinkedList<String>();
public static void main(String[] arg) {
input();
output();
}
private static void output() {
pushNum();
Iterator it = result.iterator();
while (it.hasNext()) {
System.out.print(it.next()+" ");
}
}
private static void pushNum() {
int i=1;
while(list.size()>0){
// System.out.println(i+"!! ");
Iterator it = list.iterator();
while (it.hasNext()) {
String node=(String) it.next();
if(i==num){
result.add(node);
it.remove();
i=0;
}
i++;
}
}
}
private static void input() {
str = scanner.nextLine();
String [] tmp=str.split(" ");
num=Integer.parseInt(tmp[0]);
for(int i=1;i<tmp.length;i++){
list.add(tmp[i]);
}
}
}
循环报数 Java实现的更多相关文章
- Java两种方法实现循环报数
问题描述: 十个猴子围成一圈选大王,依次1-3 循环报数,报到3 的猴子被淘汰,直到最后一只猴子成为大王.问,哪只猴子最后能成为大王? 方法一:Java链表 public class TestAll ...
- UVA 133“The Dole Queue”(循环报数处理技巧)
•参考资料 [1]:紫书P82 •题意(by紫书) 按照被选中的次序输出这 n 个人的编号: 如果A和B选中的是同一个人,输出一个这个人的编号: 输出格式:输出的每个编号占3个字节,不够3个字节在前面 ...
- 循环遍历Java字符串字符的规范方法——类似python for ch in string
比如我将string作为CNN 文本处理输入: float [] input = new float[maxLength]; // 1 sentence by maxLenWords // int[] ...
- js的for in循环和java里的foreach循环的差别
js里的for in循环定义例如以下: for(var variable in obj) { ... } obj能够是一个普通的js对象或者一个数组.假设obj是js对象,那么variable在遍历中 ...
- 循环单词 java
链接:https://www.nowcoder.com/questionTerminal/9d5fbe7750a34d0b91c73943f93b2d7d来源:牛客网如果一个单词通过循环右移获得的单词 ...
- Vue.js——循环(Java、JSTL标签库、数据库)
一.Vue.js循环 Vue.js循环要使用 v-for 指令. v-for 指令需要以 student in StudentList 形式的特殊语法使用, StudentList 是源数据数组并且s ...
- 洛谷P1050 循环【java大数】
题目:https://www.luogu.org/problemnew/show/P1050 题意:给定一个数$n$,问$n$的幂次的最低$k$位的循环节是多少. 思路:这真是我做过最难的java大数 ...
- Web循环监控Java调用 / Java调用.net wcf接口
背景介紹 (Background Introduction) 目前有一些报表客户抱怨打不开 报表执行过程过长,5.8.10秒甚至更多 不能及时发现和掌握服务器web站点情况 用戶需求(User Req ...
- 【spring】循环依赖 Java Vs Spring
菜瓜:水稻,这次我特意去看了java的循环依赖 水稻:哟,有什么收获 菜瓜:两种情况,构造器循环依赖,属性循环依赖 构造器循环依赖在逻辑层面无法通过.对象通过构造函数创建时如果需要创建另一个对象,就会 ...
随机推荐
- Leetcode: Delete Node in a BST
Given a root node reference of a BST and a key, delete the node with the given key in the BST. Retur ...
- phpstorm-----------如何激活phpstorm2016
新版激活方法: 1.在线激活 菜单help >>>> Register 选择License Server 输入 http://idea.qinxi1992.cn/ 点击ok 2 ...
- javascript jsscript .js xml html json soap
javascript ecma标准的脚本语言用于 jsscript 微软标准的一种脚本语言 .js javascript或jsscript保存成文件的形式可用于在html里重复引用 jsscript只 ...
- Excel应该这么玩——2、命名列:消除地址引用
命名列:通过名称引用列,让公式更容易理解. 下面继续举上次的栗子. 1.历史遗留问题 之前虽然把数字编成了命名单元格,但其中还是有单元格地址B2.C2之类,要理解公式需要找到对应的列标题. 特别是像下 ...
- retain,copy,assign及autorelease ,strong,weak
一,retain, copy, assign区别 1. 假设你用malloc分配了一块内存,并且把它的地址赋值给了指针a,后来你希望指针b也共享这块内存,于是你又把a赋值给(assign)了b.此时a ...
- Qt之界面实现技巧
一.主界面 1.窗口 最小化 最小化 关闭按钮 显示状态自定义 setWindowFlags(Qt::CustomireWindowHint); setWindowFlags(Qt::WindowCl ...
- Using Yum Variables
You can use and reference the following built-in variables in yum commands and in all Yum configurat ...
- 20160411002 经典SQL语句大全
一.基础 1.说明:创建数据库CREATE DATABASE database-name 2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备 ...
- TCP状态转移图学习总结
http://blog.csdn.net/hairetz/article/details/6221620 这是网络编程的基础,tcp的状态转移图说到底就是一个状态机的不同状态之间的转换关系以及触发这些 ...
- Android开发之MediaRecorder类详解
MediaRecorder类介绍: MediaRecorder类是Android sdk提供的一个专门用于音视频录制,一般利用手机麦克风采集音频,摄像头采集图片信息. MediaRecorder主要函 ...