Javaデータ構造 - 循環リスト

クラスLoopNode {
     // ノードコンテンツ
    プライベート int型のデータ;
     // 次のノード
    のプライベートLoopNode次に、

    公共 LoopNode(int型の値){
         この .DATA = 値;
         // ノード点の次のノード自体に
        この .next = この; 
    } 

    // 次のノードを取得
    公共{)次LoopNodeを(
         戻り 、この; .nextを
    } 

    // データノード取得
    公開 intを{)のgetData(
         戻り 、この; .DATAを
    }

    // 次のノード削除
    公共 ボイドremoveNextを(){
         // 最初の次のノードを削除 
        LoopNode nextNextNode = next.next;
         // 次現在のノードの隣に配置された次のノード
        この .next = nextNextNode; 
    } 

    / / 循環リンクリストのために、単一リンクリスト挿入ノード操作が追加されますが、ノードが戻って最後から追加されるたびに追加された
     // 次の現在のノードとしてノードを挿入
    公共 ボイドINSERT(ノードLoopNodeを){
         //は次のノード、次のように次のノードフェッチ 
        LoopNode NEXTNODE = ;次
         // の次現在のノードとして新しいノード
        この .next = ノード;
         // 新しいノードに次のノードを設定しますノード
        node.next = NEXTNODE。
    } 
} 

パブリック クラスメイン{
     公共 静的 ボイドメイン(文字列[]引数){ 
        LoopNode LN1 = 新しい LoopNode(1 )。
        LoopNode LN2 = 新しい LoopNode(2 )。
        LoopNode LN3 = 新しい LoopNode(3 )。

        // 增加节点
        ln1.insert(LN2)。
        ln2.insert(LN3)。

        System.out.println(ln1.next()のgetData()。)。
        System.out.println(ln2.next()のgetData()。)。
        System.out.println(ln3.next()のgetData()。)。
    } 
}

 

おすすめ

転載: www.cnblogs.com/GjqDream/p/11595908.html