weixin_39598023 2017-08-16 08:34 采纳率: 100%
浏览 825
已采纳

新手学习链表时碰到的问题,求大神指导

图片说明
在eclipse中创造链表的时候出现的提示,请问是什么原因引起呢,如何解决

package text;

class Child {
int no;
Child nextchile = null;
public Child (int no){
this.no = no;
}
}
//环形链表
class CycLink {
//先定义一个指向第一个小孩的引用。
Child firstchild = null;
Child temp = null;
int len = 0;//表示共用多少个小孩。
int k = 0;
int m = 0;
//设置m
public void setM (int m) {
this.m = m;
}
//设置链表大小
public void setlen(int len) {
this.len = len;
}
//设置从第几个人开始数数
public void setK(int k) {
this.k = k;
}
//开始play
public void play() {
Child temp = this.firstchild;
//1、先找到开始数数的人
for (int i = 1;i < k;i ++) {
temp = temp.nextchile;
}
while (this.len != 1) {
//2、数m下
for (int j = 0;j < m;j ++) {
temp = temp.nextchile;
}
//找到要出圈的前一个小孩
Child temp2 = temp;
while (temp2.nextchile != temp) {
temp2 = temp2.nextchile;
}
//3、将数到m的小孩,退出圈去
temp2.nextchile = temp.nextchile;
//让temp指向下一个数数的小孩
temp = temp.nextchile;
this.len --;
}
//最后一个小孩
System.out.print(temp.no);
}
//初始化环形链表
public void cheateLink () {
for (int i = 1;i <= len;i++) {
if(i == 1) {
//创建第一个小孩
Child ch = new Child(i);
this.firstchild = ch;
this.temp = ch;
}
else {
if (i == len) {
Child ch = new Child(i);
temp = ch;
temp.nextchile = this.firstchild;

            }
            else {
            //继续创建小孩
            Child ch = new Child (i);
            temp.nextchile = ch;
            temp = ch;
            }
        }
    }
}
public void show () {
    Child temp = this.firstchild;
    do {
        System.out.print(temp.no);
        temp = temp.nextchile;
    }while (temp != this.firstchild);
}

}

public class Josephu {
public static void main(String[] args) {
CycLink cyclink = new CycLink();
cyclink.setlen(5);
cyclink.createLink();
cyclink.setK(2);
cyclink.setM(2);
cyclink.show();
cyclink.play();
}

}
源码如下

  • 写回答

2条回答

  • 鼠晓 博客专家认证 2017-08-16 08:37
    关注

    没有这个方法,,,,你的cycling是那个类的??

    代码发出来瞅瞅

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 求chat4.0解答一道线性规划题,用lingo编程运行,第一问要求写出数学模型和lingo语言编程模型,第二问第三问解答就行,我的ddl要到了谁来求了
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥15 maple软件,用solve求反函数出现rootof,怎么办?
  • ¥65 汇编语言除法溢出问题
  • ¥15 Visual Studio问题
  • ¥20 求一个html代码,有偿
  • ¥100 关于使用MATLAB中copularnd函数的问题
  • ¥20 在虚拟机的pycharm上
  • ¥15 jupyterthemes 设置完毕后没有效果