206. 反转链表

 1 /**
 2  * Definition for singly-linked list.
 3  * struct ListNode {
 4  *     int val;
 5  *     struct ListNode *next;
 6  * };
 7  */
 8 
 9 
10 struct ListNode* reverseList(struct ListNode* head){
11     struct ListNode *p = (struct ListNode *)malloc(sizeof(struct ListNode));
12     p->next = NULL;
13     while(head)
14     {
15         struct ListNode *q=head;
16         head = head->next;
17         struct ListNode *s = (struct ListNode *)malloc(sizeof(struct ListNode));
18         s->val = q->val;
19         s->next = p->next;
20         p->next = s; 
21     }
22 
23     return p->next;
24 }

 

posted @ 2021-06-16 15:50  传说中的旅行者  阅读(37)  评论(0)    收藏  举报