java单循环赛制程序_单循环比赛的固定轮转编排法与贝格尔编排法
package com.test;
import java.util.Scanner;
import org.junit.Test;
public class RandomList {
// 固定轮转编排法
@Test
public void fixedRotates(){
String [] team = {"A","B","C","D","E","F","G","H","I","J","K","L","M","X"};//参赛的各队
int len = team.length;
for(int i=1;i
System.out.println();
System.out.println("第"+i+" 轮");
for(int j=0;j
System.out.println(team[j]+" ----- "+ team[len-1-j]);
}
String temp=team[len-1]; //将最后一队的值赋给临时变量temp
for(int k=len-1;k>0;k--){
team[k]=team[k-1];
}
team[1]=temp; //将临时变量temp赋给数组的第二值
}
}
// “贝格尔”编排法
@Test
public void beger(){
int team_Num;//队伍的数量
int team_Arr[];//队伍数组
int team_temp[];
boolean empty=false;//是否有轮空
int jump;//调动幅度
int round;//比赛轮数
int flag;//标志,队伍的最大的,或者0,其他队伍在移动的时候,如果碰到他,将跳过
int tempNum,tempNum1;//队伍在迭代时候保存临时变量的东西
//--------------------初始化一些数据
Scanner cin = new Scanner(System.in);
System.out.print("输入队伍的数量: ");
team_Num = cin.nextInt();
if(team_Num%2 != 0){//队伍个数为奇数时
empty = true;
team_Num++;
}
round = team_Num-1;
jump = ((team_Num+1)/2)-1;
team_Arr = new int[team_Num];
team_temp = new int[team_Num];
for(int i = 0;i
team_Arr[i] = i+1;
}
if(empty){
team_Arr[team_Num-1]=0;
}
flag = team_Num-1;
//---------------------开始计算了--------------
for(int j = 0;j
System.out.println("第"+(j+1)+"轮:");
for(int m = 0;m
System.out.println(team_Arr[m]+"----"+team_Arr[team_Num-m-1]);
}
for(int g = 0;g
team_temp[g] = team_Arr[g];
}
if(flag != 0 ){
tempNum = team_Arr[flag];//temp 一开始总是记录0队或者最大队伍
flag = 0;//flag 跳动
tempNum1 = team_Arr[flag];
team_Arr[flag] = tempNum;
}else{
tempNum =team_Arr[flag];//temp 一开始总是记录0队或者最大队伍
tempNum1 = team_Arr[team_Num-1];
flag = team_Num-1;//flag 跳动
team_Arr[flag]= team_temp[flag] = tempNum;
team_Arr[0]=team_temp[0] = tempNum1;
}
for(int k = 0;k
int t = k;
if(t >= team_Num)
t = t - team_Num;
int z = t;
for(int u = 0;u
t++;
if(t == team_Num)
t = t - team_Num;
if(t == flag)
t++;
if(t == team_Num)
t = t-team_Num;
}
team_Arr[t] = team_temp[z];//
}
}
}
}
java单循环赛制程序_单循环比赛的固定轮转编排法与贝格尔编排法相关推荐
- PHP赛事贝格尔编排法--单循环
//贝格尔编排法 function berger(){ //单循环 // 根据队伍数量生成数组 $num = 10; $ar = []; ...
- 贝格尔编排法-java
2019独角兽企业重金招聘Python工程师标准>>> import java.util.Scanner; /*** 精简算法* @author jie**/ public clas ...
- 脑电波之父:汉斯·贝格尔_深度学习,认识聪明的汉斯
脑电波之父:汉斯·贝格尔 Around 1900, a German farmer made an extraordinary claim: he had taught a horse basic a ...
- java写一个程序给保龄球比赛计分的程序
thoughwork思沃学院的题,还想看看能不能提前去心仪的公司体会下结对编程顺便感受下公司气氛,可是提交的时候发现代码写错了,要求用的是函数我却没用,提交总是出问题,好难过,还不想改,也改不对,毕竟 ...
- java编写应用程序_为您的Java应用程序编写数据驱动的测试
java编写应用程序 JUnit是一个功能非常强大的测试框架,它不仅为其用户提供了编写快速简便的测试的功能,而且还为用户提供了扩展它并使其按其期望的方式工作的机会. 在JUnit之上构建了许多框架,这 ...
- 在JAVA中 以下程序_在Java中,以下程序的输出结果是()_学小易找答案
[单选题]运行以下Java代码,说法正确的是( ). [单选题]在Java中,以下程序的输出结果是() [单选题]利用"出声"的方式向学生展示教师分析问题的过程与方法的教学方法是_ ...
- java编写应用程序_使用Java API编写应用程序
java编写应用程序 总览 介绍 DB2JSON可用于DB2 Linux,Unix和Windows 10.5以及用于z / OS V3.1的IBM DB2 Accessories Suite与DB2 ...
- java mvc 小程序_[Java教程]Spring MVC 的环境搭建和入门小程序
[Java教程]Spring MVC 的环境搭建和入门小程序 0 2017-02-17 00:00:16 1.1.下载spring框架包. 1.1.1百度搜索Spring Framework. 进入s ...
- java恶作剧小程序_一个Java恶搞小程序
运用Java程序控制某个应用程序的运行(以网易云音乐为例),步骤如下 1.建立bat文件分别是start.bat(控制程序的运行)和kill.bat(控制程序的结束): start.bat 的内容如下 ...
- vs怎么建java的控制台程序_像VS一样简单的打包“控制台”程序
对于我一个不了解JAVA,没有相关生态圈的C#er, 自己要研究Scala真是困难重重,尤其在项目构建上真是感觉半瓶子醋难以入门. 一个VS控制台程序,build之后甚至不需要了解 ms build就 ...
最新文章
- 使用直方图处理进行颜色校正
- Java对List对象进行排序
- JNI中C调用Java方法
- 长安大学微型计算机原理与接口技术答案,长安大学微机原理与接口技术A卷答案...
- linux环境切换python3版本
- synchronized(this)用法
- kafka删除队列_没想到 Kafka 还会这样问,学会这些带你轻松搞定大厂面试!
- Window.navigator
- 阿里云天池 Python训练营Task4: Python数据分析:从0完成一个数据分析实战 学习笔记
- 第五十三期:公司如何选择数据库?DynamoDB、Hadoop和MongoDB 大比拼
- 到底什么培训适合你?
- mix2线刷开发板救砖_小米Mix 2(安卓8.0)一键救砖教程,轻松刷回官方系统
- “The server requested authentication method unknown to the client.”的解决方案
- 不用找,你想要的建筑园林3d模型素材都在这里
- html显示emoji表情,在web页面显示emoji表情
- 红外万能遥控器2.0,把家里的红外遥控器改成能用语音和手机app控制
- Oracle数据库增删改查
- CC2430 CC2530 AD转换分辨率之“争”
- php容器下安装gd库
- 【quasi-maximum likelihood decoder】一种有效的PSK信号准最大似然译码器matlab性能仿真