1

我很难使用链接列表/节点,我基本上必须只使用节点在 Java 中创建自己的链接列表。

这是我必须做的:

              -----                   -----           -----
     head -->|  B  |---------------->|  D  |-------->|  S  |
              -----                   -----           -----
               |                        |               |
               |   -----     -----      |   -----       |   -------     -----
               -->| Ben |-->| Bob |     -->| Dan |      -->| Sarah |-->| Sue |
                   -----     -----          -----           -------     -----

这是我到目前为止所拥有的:

public class index {

public static void main(String[] args) {
    //Front = start of list
    nameNode head = null; 


    //head = add(head,"Bob");
    //head.next = add(head,"Cat"); 
    //head.next.next = add(head, "Dog"); 

    nameNode cNode = new nameNode("C", null); 
    nameNode bNode = new nameNode("B",cNode);
    nameNode aNode = new nameNode("A",bNode);


    System.out.println(aNode.next); 


}

// This adds nodes to front of list
public static nameNode add(nameNode head, String movie)
{
    nameNode temp = new nameNode(movie, null); 
    temp.next = head; 
    return temp; 
}

//Private node class that creates new nodes 
private static class nameNode {

    public String data;

    public nameNode next; 

    public nameNode(String data, nameNode next){
        this.data = data; 
        this.next = next; 
    }

    public String toString(){
        return data + ""; 
    }
  }
}

那么我应该怎么做才能通过节点制作 TOP 列表和 BOTTOM 子列表。所以我的想法是基本上为B创建一个节点,然后将Ben和Bob链接在一起,链接到B。然后让B链接到D等等?

我也在玩节点,我认为我现在制作它们的方式是正确的?是否有另一种方法可以自动创建对象,而不是我自己创建对象?

我想要做的是使用 add 方法基本上创建一个新节点......但我不明白如何真正做到这一点,关于我如何做到这一点的任何提示?

4

1 回答 1

-1

请在此处找到实现LinkedList

我在图形表示中注意到的是,每个节点都指向数据以及下一个节点

但是你的nameNode班级只有一个 next 指针。您可能必须使用LinkedList课堂中使用的另一个参考。

还尝试使用泛型,以便您可以放置​​任何数据。

于 2013-02-13T06:32:25.610 回答