LeetCode 206: 反转链表-反转链表
题目
给你单链表的头节点 head
,请你反转链表,并返回反转后的链表。
示例 1:
输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1]
示例 2:
输入:head = [1,2] 输出:[2,1]
示例 3:
输入:head = [] 输出:[]
本题较为简单,所以直接给出代码,仅作记录用
/**
* Definition for singly-linked list.
* struct ListNode {
* int val;
* struct ListNode *next;
* };
*/
struct ListNode* reverseList(struct ListNode* head) {
if (head==NULL){
return head;
}
struct ListNode* tail=head->next;
struct ListNode* H=head;
struct ListNode* cur=head;
while(tail!=NULL){
head=tail;
tail=tail->next;
head->next=cur;
cur=head;
}
H->next=NULL;
return head;
}