【1】题目
题目:定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点
【2】思路
双指针,递归
【3】代码
struct ListNode
{
int m_nValue;
ListNode * m_pNext;
};
ListNode * ReversedList(ListNode * pHead)
{
ListNode* cur = NULL, *pre = pHead;
while (pre != NULL) {
ListNode* t = pre->m_pNext;
pre->m_pNext = cur;
cur = pre;
pre = t;
}
return cur;