Javaスタックの実装

パブリック クラス ReversStack <T> { 

    クラスノード<U> {
         プライベート U itemValue。// 结点的值

        プライベートノード<U> nextItem。// 下一个节点地址

        ノード(){ 
            itemValue = NULL ; 
            nextItem = nullを
        } 

        パブリックノード(U itemValue、ノード<U> nextItem){
             この .itemValue = itemValue。
            この .nextItem = nextItem。
        } 

        ブール端(){
             リターンitemValue == nullの && nextItem == nullを
        } 
    } 

    プライベートノード<T>トップ= 新しいノード<>(); // 最后一个节点

    // 进栈
    公共 ボイドプット(T itemValue){ 
        トップ = 新しいノード<T> (itemValue、上)。
    } 
    
    // 出栈
    パブリックTポップ(){ 
        T結果 = top.itemValue。
        もし(!top.end()){ 
            トップ = top.nextItem。
        } 
        戻り値の結果; 
    }
    
    パブリック 静的 ボイドメイン(文字列[]引数){ 
        ReversStackの<string> RS = 新しい ReversStackの<string> (); 
        rs.put( "TST1" ); 
        rs.put( "TST2" ); 
        rs.put( "TST3" ); 
        System.out.println(rs.pop())。
        System.out.println(rs.pop())。
        System.out.println(rs.pop())。
    } 
}

 

おすすめ

転載: www.cnblogs.com/zyf-yxm/p/10986334.html