题目
反转一个单链表。
示例:
输入: 1->2->3->4->5->NULL
输出: 5->4->3->2->1->NULL
解析
代码
/*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode(int x) : val(x), next(NULL) {}* };*/class Solution {public:ListNode* reverseList(ListNode* head) {if (!head) return NULL;ListNode* dummy = new ListNode(-1);dummy->next = head;ListNode* pre = dummy;ListNode* cur = dummy->next;while (cur->next) {ListNode* nxt = cur->next;cur->next = nxt->next;nxt->next = pre->next;pre->next = nxt;}return dummy->next;}};
