从尾到头打印链表

来源:互联网 发布:百度云总是网络不给力 编辑:程序博客网 时间:2024/05/21 04:23

题目:

输入一个链表,从尾到头打印链表每个节点的值。

思路:

考虑使用栈和逆序算法实现

algorithm 逆序算法:

#include<algorithm>vector<int> List::printListFromTailToHead(ListNode* head){vector<int> vec;ListNode *temp = head;while(temp->next!=NULL){vec.push_back(temp->val);temp = temp->next;}vec.push_back(temp->val);reverse(vec.begin(),vec.end());return vec;}

stack 实现:

#include<stack>vector<int> List::printListFromTailToHead(ListNode* head){vector<int> vec;stack<int> stk;ListNode *temp = head;while(temp->next!=NULL){temp = temp->next;stk.push(temp->val);}stk.push(temp->val);while(!stk.empty()){ //注意加上!vec.push_back(stk.top());stk.pop();}return vec;}



原创粉丝点击