请教高手看看这陈旭!
javac时人、提示: 1、 无法将 KidCircle 中的 delete() 应用于 (Kid)
2。 软件包 k 不存在 和 找不到符号 k
public class Count3Quit2{
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){
kc.delete(k);
countNum = 0;
}
k = k.right;
}
System.out.println(k.id);
}
}class Kid{
int id;
Kid left;
Kid right;
}
class KidCircle {
int count = 0;
Kid first, last;
KidCircle(int n){
for(int i=1; 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;
last = k;
}
count++;
}
void delete(){
if(count<=0){
return;
} else if(count==1){
first = last = null;
} else {
k.left.right = k.right;
k.right.left = k.left;
if(k == last){
last = k.left;
} else if(k == first){
first = first.right;
}
}
count--;
}
}
javac时人、提示: 1、 无法将 KidCircle 中的 delete() 应用于 (Kid)
2。 软件包 k 不存在 和 找不到符号 k
public class Count3Quit2{
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){
kc.delete(k);
countNum = 0;
}
k = k.right;
}
System.out.println(k.id);
}
}class Kid{
int id;
Kid left;
Kid right;
}
class KidCircle {
int count = 0;
Kid first, last;
KidCircle(int n){
for(int i=1; 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;
last = k;
}
count++;
}
void delete(){
if(count<=0){
return;
} else if(count==1){
first = last = null;
} else {
k.left.right = k.right;
k.right.left = k.left;
if(k == last){
last = k.left;
} else if(k == first){
first = first.right;
}
}
count--;
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货