單連結串列從尾到頭輸出元素

shuaishuai3409發表於2016-03-02

思路:0 若允許改變連結串列指標,可以將連結串列反轉,然後在正向輸出。

http://blog.csdn.net/shuaishuai3409/article/details/50756406
http://blog.csdn.net/shuaishuai3409/article/details/50756480參照這兩篇部落格實現單連結串列反轉。如果反轉會了,正向輸出也就不難了。

  1. 若不允許改變連結串列指標,可以新建一個棧,實現後進先出。

  2. 若也不允許建立新的空間,可以用遞迴實現。因為棧用的就是遞迴的思想,每當訪問一個節點時,先輸出其後面節點的資料。


這裡先給出遞迴實現逆向輸出。

public class BackOutput {

    public void backout(Lnode p) {
        if(p.next!=null){
            backout(p.next);
        }
        System.out.println(p.data);
    }

}

該程式碼還是要參照上述兩個連線。p指的是連結串列頭指標,Lnode是連結串列類。


用棧的思想實現單連結串列元素逆向輸出。
棧分順序棧和鏈棧,鏈棧和單連結串列相似,就不考慮了。這裡用陣列實現順序棧。

相關文章