/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */ struct ListNode* reverseList(struct ListNode* head) { if(!head||!head->next) return head; struct ListNode *cur=head; struct ListNode *tail=head; while(tail->next) tail=tail->next; while(cur!=tail) { head=cur->next; cur->next=tail->next; tail->next=cur; cur=head; } return head; }
有一个问题,leetcode给出的链表测试数据应该是不包含头结点,所以写代码的时候需要注意一下。
时间: 2024-10-07 12:20:52