class Solution {
public:
vector<int> printListFromTailToHead(ListNode* head)
{
stack<int> jinzhan;
vector<int> chuzhan;
while(head)
{
jinzhan.push(head->val);
head = head->next;
}
while(!jinzhan.empty())
{
chuzhan.push_back(jinzhan.top());
jinzhan.pop();
}
return chuzhan;
}
};
链表是从头到尾单向的,从尾到头的话需要一个翻转,栈就是一个很好的选择,先进后出保证了翻转。从栈出来之后就可以得到结果了。