剑指offer 5. 从尾到头打印链表

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zhaohaibo_/article/details/85543799

输入一个链表的头结点,按照 从尾到头 的顺序返回节点的值。
返回的结果用数组存储。
样例

输入:[2, 3, 5]
返回:[5, 3, 2]

返回逆序可以对原数组逆序 reverse(res.begin(), res.end())
也可以直接构造一个逆序数组 vector<int>(res.rbegin(), res.rend())

/**
 * 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());
    }
};

猜你喜欢

转载自blog.csdn.net/zhaohaibo_/article/details/85543799