从尾到头打印链表
题目:
输入一个链表的头结点,按照 从尾到头 的顺序返回节点的值。
返回的结果用数组存储。
样例
输入:[2, 3, 5] 返回:[5, 3, 2]
解题思路:
因为返回的是vector,考虑新建vector,将链表的值压入vector中,最后将vector反转
代码:
1 /** 2 * Definition for singly-linked list. 3 * struct ListNode { 4 * int val; 5 * ListNode *next; 6 * ListNode(int x) : val(x), next(NULL) {} 7 * }; 8 */ 9 class Solution { 10 public: 11 vector<int> printListReversingly(ListNode* head) { 12 vector<int> ve; 13 auto h = head; 14 while(h) 15 { 16 ve.push_back(h->val); 17 h = h-> next; 18 } 19 return vector<int>(ve.rbegin(), ve.rend()); 20 } 21 };