输入一个链表,按链表值从尾到头的顺序返回一个ArrayList
/** * struct ListNode { * int val; * struct ListNode *next; * ListNode(int x) : * val(x), next(NULL) { * } * }; */ class Solution { public: vector<int> printListFromTailToHead(ListNode* head) { //int a[100000]; vector<int> a; vector<int> last; ListNode* p = head; int len = 0; while(NULL != p) { a.push_back(p->val) ; p = p -> next; } len = a.size(); for(int j = len-1;j >= 0;j--) { last.push_back(a[j]); } return last; } }; /***************************************** *方法1:将链表的值放入数组中,再从尾到头的读取 *方法2:利用栈的后进先出的特性,实现逆序读取 *****************************************/