1 #include2using
namespace
std;34
struct
node5;
910 node* addnode(node** phead,node*pnode)
1116
else
1723 pend->pnext =pnode;24}
2526
return *phead;27}
2829
void printlist(node*phead)
3036 cout <3839
//遞迴方式
40void pfun(node*phead)
4151
52return;53
}5455//
陣列方式:開闢乙個和鍊錶一樣長度的陣列 遍歷一遍鍊錶存進陣列
56//
然後陣列倒著輸出就可以了
5758
//棧:利用棧先進後出的方式來列印
59//
遍歷乙個鍊錶就壓乙個進棧
60//
最後全部彈出列印
6162
intmain()
63
演算法 從尾到頭列印鍊錶
題目 輸入乙個鍊錶,要求從尾到頭列印該鍊錶,鍊錶結點定義如下 struct listnode 解題思路 要求很好理解,比如乙個鍊錶是 列印的結果是 6 5 4 3 2 1 1.相信大多數人看到這個要求後的第一反應是反轉鍊錶,再從頭列印,但是這樣一來,原始資料就改變了。2.當然我們可以建立新的記憶體空...
從尾到頭列印鍊錶
題目描述 輸入乙個鍊錶,從尾到頭列印鍊錶每個節點的值。輸入 每個輸入檔案僅包含一組測試樣例。每一組測試案例包含多行,每行乙個大於0的整數,代表乙個鍊錶的節點。第一行是鍊錶第乙個節點的值,依次類推。當輸入到 1時代表鍊錶輸入完畢。1本身不屬於鍊錶。輸出 對應每個測試案例,以從尾到頭的順序輸出鍊錶每個節...
從尾到頭列印鍊錶
1.問題描述 輸入乙個鍊錶的頭結點,從尾到頭反過來列印出每個結點的值。來自 劍指offer 2.分析 通常遍歷乙個鍊錶都是從頭開始遍歷的,現在讓我們從尾到頭列印結點的值,我們可以使用棧這種資料結構 因為先進後出 來儲存鍊錶,然後在彈出棧中的元素,從而從尾到頭列印出結點的值。另外 遞迴在本質上就是乙個...