剑指Offer06.从尾到头打印链表

剑指Offer06.从尾到头打印链表,第1张

剑指Offer06.从尾到头打印链表
  • 剑指Offer06.从尾到头打印链表
  • 解题思路
  • 代码

剑指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;
}

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/921028.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-16
下一篇2022-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存