1. 程式人生 > >c++ 輸入一個連結串列,從尾到頭列印連結串列每個節點的值。

c++ 輸入一個連結串列,從尾到頭列印連結串列每個節點的值。

//這個題預設連結串列的頭結點不為空,是有數值的。第一次做的時候,以為

/**
*  struct ListNode {
*        int val;
*        struct ListNode *next;
*        ListNode(int x) :
*              val(x), next(NULL) {
*        }
*  };
*/
class Solution {
public:
    vector<int> printListFromTailToHead(ListNode* head) 
    {
        ListNode* q;
        int length=0;
        q=head;
        while(q!=NULL)
        {
            q=q->next;
            length++;
        }
        vector<int> list_vec(length);
        q=head;
        for(int i=0;i<length;i++)
        {
            list_vec[i]=q->val;
            q=q->next;
        }
        reverse(list_vec.begin(),list_vec.end());
        return list_vec;
    }
};

頭結點的值為空。。。