[链表]从尾到头打印链表
输入一个链表,按链表从尾到头的顺序返回一个ArrayList
思路:这里要返回的是一个数组,所以可以直接先把链表里的元素取出来放进一个数组,然后再把这个数组进行逆转(不能用reverse)
可以定义一个i=0,一个j=size-1;然后头尾进行交换,知道i=j或者i>j
class Solution { public: vector<int> printListFromTailToHead(ListNode* head) { vector<int> v; ListNode* p; p=head; while(p!=NULL) { v.push_back(p->val); p=p->next; } int temp=0; for(int i=0,j=v.size()-1;i<j;i++,j--) { temp=v[i]; v[i]=v[j]; v[j]=temp; } return v; } };