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 のノードを作成し、B にリンクする Ben と Bob をリンクし、B を D にリンクするというものでした。

また、ノードをいじっていますが、現在作成している方法は正しいと思いますか? オブジェクトを自分で作成する代わりに、オブジェクトを自動的に作成する別の方法はありますか?

私ができるようにしたいのは、基本的に add メソッドを使用して新しいノードを作成することです...しかし、実際にそれを行う方法がわかりません。これを行う方法に関するヒントはありますか?

4

1 に答える 1

-1

ここで実装を見つけてくださいLinkedList

私が絵で気づいたのは、各ノードが次のノードだけでなくデータも指しているということです。

ただし、nameNodeクラスには次のポインタしかありません。クラスで使用されている別の参照を使用する必要がある場合がありますLinkedList

また、任意のデータを配置できるようにGenericsを使用してみてください。

于 2013-02-13T06:32:25.610 に答える