
- 剑指Offer06.从尾到头打印链表
- 解题思路
- 代码
1.先遍历1遍,得出链表的长度L。
2.动态开辟L长度的内存,从头遍历链表,同时把值给数组,数组存值时,从后往前给值。
时间复杂度O(N)
int* reversePrint(struct ListNode* head, int* returnSize){
struct ListNode *cur=head;
int n=0;
while(cur)
{
cur=cur->next;
n++;
}
*returnSize=n;
int* arr=(int*)malloc(sizeof(int)*n);
cur=head;
while(cur)
{
arr[n-1]=cur->val;
n--;
cur=cur->next;
}
return arr;
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)