反转链表
定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。
/** * 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 || !head->next) return head; auto p = reverseList(head->next); head->next->next = head; head->next = NULL; return p; } };