您好,登錄后才能下訂單哦!
題目:輸入一個鏈表的頭結點,從尾到頭反過來打印出每個節點的值。
方法1:使用棧
/* 鏈表節點定義如下: struct ListNode { int _data; ListNode* _next; }; */ void PrintListTailToHead(ListNode* phead) { assert(phead); stack<ListNode*> s; ListNode* cur = phead; while (cur) { s.push(cur); cur = cur->_next; } while (!s.empty()) { cout<<s.top()->_data<<" "; s.pop(); } cout<<endl; }
方法2:遞歸
void PrintListTailToHead(ListNode* phead) { if (phead == NULL) { return; } PrintListTailToHead(phead->_next); cout<<phead->_data<<" "; }
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。