题解 | 反转链表

反转链表

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

/**
 * struct ListNode {
 *	int val;
 *	struct ListNode *next;
 * };
 */
/**
 * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
 *
 * 
 * @param head ListNode类 
 * @return ListNode类
 */

#include <math.h>
#include <stdlib.h>
struct ListNode* ReverseList(struct ListNode* head ) {
    if(head==NULL)
        return NULL;
    struct ListNode *s=(struct ListNode*)malloc(sizeof(struct ListNode));
    s->next=head;
    struct ListNode* p=head->next;
    head->next=NULL;
    while(p!=NULL)
    {
        struct ListNode* q=p->next;
        p->next=s->next;
        s->next=p;
        p=q;
    }
    head=s->next;
    return head;
}





全部评论

相关推荐

不愿透露姓名的神秘牛友
07-08 10:39
一个证都没&nbsp;我能填什么
程序员小白条:别人有,你为什么没有,还是这个道理,社会就是比较,竞争,淘汰,你要安逸,那么就要做好淘汰的准备
点赞 评论 收藏
分享
下北澤大天使:你是我见过最美的牛客女孩😍
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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