题目描述
输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。
递归即可。
class Solution {
public:
vector<int> printListFromTailToHead(struct ListNode* head) {
vector<int> v;
solve(head,v);
return v;
}
void solve(struct ListNode* head, vector<int> &v)
{
if(head != nullptr)
{
if(head->next != nullptr)
solve(head->next,v);
v.push_back(head->val);
}
}
};
今天看书时,一个指向指针的指针把我搞的很懵逼。自从学完数据结构快一年没用过指针这玩意了,找个机会再好好理解一下吧。