题解 | #从尾到头打印链表#

从尾到头打印链表

https://www.nowcoder.com/practice/d0267f7f55b3412ba93bd35cfa8e8035

int* printListFromTailToHead(struct ListNode* listNode, int* returnSize ) {
    //先从头遍历一遍,确定链表长度
    struct ListNode *p = listNode;
    int count = 0;  //记录链表长度
    while(p != NULL){
        p = p->next;
        count++;
    }
    *returnSize = count;  //返回的长度即为链表长度
    int *arr = (int*)malloc(sizeof(int)*count); //开辟数组空间
    p = listNode;
    while(p != NULL){
        arr[--count] = p->val; //反向存储到数组里
        p = p->next;
    }
    return arr;
}

全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务