从尾到头打印链表

ryluo 2020-06-19 22:17:11

输入一个链表的头结点,按照 从尾到头 的顺序返回节点的值。

返回的结果用数组存储。

样例

输入:[2, 3, 5]
返回:[5, 3, 2]
/**
 * Definition for singly-linked list.
 * struct ListNode {
 *     int val;
 *     ListNode *next;
 *     ListNode(int x) : val(x), next(NULL) {}
 * };
 */
class Solution {
public:
    vector<int> printListReversingly(ListNode* head) {
        vector<int> res;

        while(head){
            res.push_back(head->val);
            head = head->next;
        }

        return vector<int>(res.rbegin(), res.rend());
    }
};

注意点:

有些时候reverse是用不了的,所以可以考虑使用vector(res.rbegin(), res.rend())