2011-12-05 13 views
1

私は、java utilを使用せずに、リンクリストをゼロから作成して管理するように求められました。リンクリストにオブジェクトを格納する

複数の属性を持つオブジェクトを作成する場合は、 &年齢の場合、オブジェクトをリンクリスト内に格納することは可能でしょうか?

私はこの周りに頭を抱えようとしており、助けていただければ幸いです!

ここに私の擬似コードは次のとおりです。

クラス: ノード LList 人 住所

add_person 
sout "Enter name" 
scan.next(String name) 
pass name to setName (a Person class function) 
sout "Enter postcode" 
scan.next(String postCode) 
pass postCode to setPostCode (a Address class function) 

どのように私は、同じリンクリストの中に一緒にこれら2つの情報ビットをリンクに行きますか?

編集:入力していただきありがとうございます、私はあなたの推薦に基づいてお読みください!もう一度多くの感謝を! :)

+4

、このような恐ろしいことを行うように頼むでしょうか?その関係から脱出する時です! –

+0

ここをクリックしてください:http://stackoverflow.com/questions/10042/how-do-i-implement-a-linked-list-in-java – mprabhat

+0

宿題の場合は、そのようにタグ付けする必要があります。 – Aaron

答えて

0

ジェネリックを使用する独自のLinkedListを作成する必要があります。任意のオブジェクト型を処理させます。

LinkedListに追加できるオブジェクトに、名前と投稿コード、年齢などをカプセル化する必要があります。

package linkedlist; 

public class Node<T> { 
    private Node<T> prev; 
    private Node<T> next; 
    private T value; 
} 
+0

私は推測することができます:リンクされたリストを学ぶことは、それらを実装することよりどれだけ良いでしょうか? –

+0

申し訳ありませんが、私は "宿題"タグを見逃しました。 – duffymo

0

あなたの独自のNodeクラスを作成するだけで済みます。

public class Node{ 
    protected String name; 
    protected int age; 
    //any additional data you need... 
    protected Node next; 

    //methods... 

このクラスには、多くのデータフィールドを含んでいるでしょうし、これらのフィールドと対話する方法を提供する:このクラスは、次のようになります。重要なコンポーネントは、 "保護されたノードnext"です。これはリンクされたリストの次のノードです。リスト内のすべてのノードには、テールを除いて次のノードがあります。テールノードは、次にヌルに等しく設定されます。

+1

データ構造とデータを混在させないでください。名前、年齢などは 'Node'クラスのメンバーではありません。 –

1

リンクされたリストがどのようなもので、どのように構築する必要があるかを調べてみてください。あなたの擬似コードは、リンクされたリストとは何の関係もなく、初歩的なデータ入力しかありません。それが何で、どのように機能するのかを理解するために、以下のリンクを見てみることをお勧めします。構造を理解すれば、実際のコーディングはかなり単純です。

他の人にあなたの宿題をしないように勧めます。

Wikipedia

0

まずあなたがノードであるリンクリストの基本的なビルディングブロックを定義する必要があります。ノードは、あなたが望むものを格納するコンテナのようなものです。そのため、storedData変数はObject型です。あなたはこのようにそれを定義します

public class MyNode{ 
Object storedData; // this is a reference to the object that you want stored in the list 
MyNode next; //this is a reference to the next node in your list 
... 
} 

次に、あなたはこのように行くだろう、あなたのリンクリストクラス、定義することができます。

public class MyLinkedList{ 
MyNode head; //this is a reference to the top element of your list 
int nodeCount // 
//put all the requkired methods here 
} 
関連する問題