java吧 关注:1,254,936贴子:12,745,448
  • 5回复贴,共1

【求助】创建一个环形链表。。 为什么最后一个小孩打不出来 ...

只看楼主收藏回复

public class Demo4 {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
CycLink cl=new CycLink();
cl.setLen(9);
cl.createLink();
cl.show();
}
}
class Child
{
int no;
Child nextChild=null;
public Child(int no)
{
//给一个编号
this.no=no;
}
}
//环形链表
class CycLink
{
//先定义一个指向链表第一个小孩的应用
//指向第一个小孩的引用,不能动
Child firstChild=null;
Child temp=null;
int len=0;//表示共有几个小孩
//设置链表的大小
public void setLen(int len)
{
this.len=len;
}
//初始化环形链表
public void createLink()
{
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.nextChild=ch;
temp=ch;
temp.nextChild=this.firstChild;
}
else
{
//继续创建小孩
Child ch=new Child(i);
temp.nextChild=ch;
temp=ch;
}
}
}
}
//打印该环形链表
public void show()
{
//定义一个跑龙套
Child temp=this.firstChild;
do{
System.out.println(temp.no);
temp=temp.nextChild;
}while(temp!=this.firstChild);
}
}


1楼2013-12-09 16:08回复
    自顶 求大神帮忙


    2楼2013-12-09 16:36
    回复
      for(i=1;i<=len;i++)


      来自Android客户端3楼2013-12-09 16:40
      收起回复
        打小孩是犯法Di~~


        IP属地:广西来自手机贴吧4楼2013-12-09 17:03
        回复