题目:
输入一个链表,按链表从尾到头的顺序返回一个ArrayList。
/**
* struct ListNode {
* int val;
* struct ListNode *next;
* ListNode(int x) :
* val(x), next(NULL) {
* }
* };
*/
// 1.arrayList用于存储链表中的节点
// 2. 记录链表中节点的个数,用于倒着存储链表中的节点
class Solution {
public:
vector<int> printListFromTailToHead(ListNode* head) {
ListNode *new_ptr = head;
int len =0;
while(new_ptr!=nullptr){
new_ptr = new_ptr->next;
len++;
}
vector<int> arraylist(len);
new_ptr = head;
int i = len-1;
while(new_ptr!=nullptr){
arraylist[i] = new_ptr->val;
new_ptr = new_ptr->next;
i--;
}
return arraylist;
}
};