题解 | #反转链表#

反转链表

https://www.nowcoder.com/practice/75e878df47f24fdc9dc3e400ec6058ca

/**
 * struct ListNode {
 *  int val;
 *  struct ListNode *next;
 * };
 */
/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 *
 * @param head ListNode类
 * @return ListNode类
 */
#include <stdbool.h>
#include <stdio.h>
struct ListNode* ReverseList(struct ListNode* Head ) {
    if(Head==NULL)
    return Head;
        // write code here
        //若pHead 不存在 在直接返回pHead
        //创建头节点;
    struct ListNode *L =(struct ListNode*)malloc(sizeof(struct ListNode ));
    L->next=NULL;
    struct ListNode *p;
    p=Head;
    while (p) {
        struct ListNode *q=p->next;
        p ->next=L->next;
        L->next=p;
        p=q;
    
    }
              return L->next;


    }

#链表#
全部评论

相关推荐

评论
点赞
收藏
分享

创作者周榜

更多
正在热议
更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务