输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。
示例 1:
输入:head = [1,3,2]
输出:[2,3,1]
题解:
遍历节点,push到容器中,再反向迭代器构造临时对象返回
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* ListNode *next;
* ListNode(int x) : val(x), next(NULL) {}
* };
*/
class Solution {
public:
vector<int> reversePrint(ListNode* head) {
vector<int> result;
ListNode *p = head;
while (p != NULL) {
result.push_back(p->val);
p = p->next;
}
return vector<int>(result.rbegin(), result.rend());
}
};