链接:力扣
题目:输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。
示例 1:输入:head = [1,3,2] 输出:[2,3,1]
解题思路:因为是从尾到头打印,我们可以利用栈先进后出的性质,把每个节点放入一个栈中。又因为题目需要数组来输出,所以创建一个vector,将栈顶元素放入vector里,最后返回这个vector。
代码:
class Solution {
public:
vector reversePrint(ListNode* head) {
vector res;
stack stk;
while(head != NULL) {
stk.push(head -> val);
head = head -> next;
}
while(!stk.empty()) {
res.push_back(stk.top());
stk.pop();
}
return res;
}
};



