其中ListNode*pp为传入的参数:
//反转单链表
ListNode*Reverse(ListNode*pp)
{
if (pp == NULL || pp->next == NULL)
{
return pp;
}
ListNode*p1 = pp;
ListNode*p2 = pp->next;
ListNode*p3 = pp->next;
p1->next = NULL;
while (p3->next!= NULL)
{
p3 = p3->next;
p2->next = p1;
p1 = p2; p2 = p3;
}
p2->next = p1;
pp= p2;
return pp;
}