剑指offer-3从头到尾打印链表

题目描述
输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
分析:先复制链表到一个vector容器array1,再将array1倒序复制到array2。

/**
*  struct ListNode {
*        int val;
*        struct ListNode *next;
*        ListNode(int x) :
*              val(x), next(NULL) {
*        }
*  };
*/
class Solution {
public:
    vector<int> printListFromTailToHead(ListNode* head) {
        vector<int> array1;
        vector<int> array2;
        while(head!=NULL){
            array1.push_back(head->val);
            head=head->next;
        }
        for(int i=array1.size()-1;i>=0;i--){
            array2.push_back(array1[i]);
        }
        return array2;
    }
};

猜你喜欢

转载自blog.csdn.net/m0_37704296/article/details/81282871