用java实现数到3退出(一群小朋友围成一个圈,数到3的朋友自动退出该圈)
Count3Quit.java的源代码如下
[code lang="java"]

package com.daozhao;

public class Count3Quit {
public static void main(String[] args){
KidCircle kc=new KidCircle(500);
int CountNum=0;
Kid k=kc.first;
while(kc.count>1){
CountNum++;
if (CountNum==3){
CountNum=0;
kc.delete(k);

}
k=k.right;
}
System.out.println(kc.first.id);
}
}

class Kid{
int id;
Kid right;
Kid left;
}

class KidCircle{
int count=0;
Kid first;
Kid last;

KidCircle(int n){
for(int i=0;i<n;i++){
add();
}
}

void add(){
Kid k=new Kid();
k.id=count;
if (count==0){
first=k;
last=k;
k.left=k;
k.right=k;
}
else{
last.right=k;
k.left=last;
k.right=first;
first.left=k;

}
count++;
}

void delete(Kid k){
if(count<=0){
return;
}
else if(count==1){
first=last=null;
}
else{
k.left.right=k.right;
k.right.left=k.left;

if(k==first){
first=k.right;
}
else if(k==last){
last=k.left;
}
}
count--;
}
}

[/code]

分类: Java

发表评论

电子邮件地址不会被公开。 必填项已用*标注