HW输入字符串长度,字符串,计数m。从前往后计数,当数到m个元素时,m个元素出列,同时将该元素赋值给m,然后从下一个数计数循环,直到所有数字都出列,给定的数全部为大于0的数字。输出出队队列。
2024-08-23 00:13:26
package huawei; import java.util.Scanner; public class 约瑟夫环 {
private static class Node
{
public int num;
public Node next;
public Node(int n)
{
num=n;
} } public static String getOutString(int len, String str, int m)
{
String ans="";
String s[]=new String[len];
int n[]=new int[len];
s=str.split(",");
for(int i=0;i<len;i++)
{
n[i]=Integer.parseInt(s[i]);
// System.out.println(n[i]); }
//建立循环链表
Node node=new Node(n[0]);
Node header=node;
for(int i=1;i<len;i++)
{
node.next=new Node(n[i]);
node=node.next; }
//循环输出
node.next=header;
node=header;
System.out.println(node.num); while(node.next!=node)
{ for(int i=0;i<m-2;i++)
{
node=node.next;
}
// System.out.println(node.next.num);
ans+=node.next.num;
m=node.next.num;
node.next=node.next.next;
node=node.next; } //System.out.println(node.num); return ans+node.num; } public static void main(String[] args)
{
//Scanner s=new Scanner(System.in);
// System.out.println("请输入人的个数");
// int count=s.nextInt();
System.out.println(getOutString(4, "3,1,2,4", 7)); } }
最新文章
- ORA-12519: TNS:no appropriate service handler found 解决(转)
- MongoDB数据库的操作,增删改查
- Python模块:PIL
- scrum站立会议学习
- MyBatis的Dao层注入SqlSession
- 总结 output 用法
- datagrid后台给每列添加js方法
- 转:Eclipse Kepler已支持Java 8
- Python 数据处理扩展包: pandas 模块的DataFrame介绍(创建和基本操作)
- HTML 页面载入 Flash 插件的几种方法
- [bzoj2157]旅游 (lct)
- Jupyter 初体验
- Caused by: com.mysql.jdbc.MysqlDataTruncation: Data truncation: Truncated incorrect DOUBLE value: &#39;L
- tensorflow Tensorboard可视化-【老鱼学tensorflow】
- java笔记----JVM内存
- hadoop 动态调整mapred参数
- ASP.NET MVC4分页Site.CSS
- - Fractal(3.4.1)
- lucene 初探
- android 的build.gradle 的API手册