offer面试题-----链表反转

ListNode * ReverseList(ListNode *pHead)
{
ListNode *pReversedHead = NULL;
ListNode *pNode = pHead;
ListNode *pPrev = NULL;
while(pNode!=NULL)
{
ListNode *pNext = pNode->next;
if(pNext == NULL)
pReversedHead = pNode;
pNode->next = pPrev;
pPrev = pNode;
pNode = pNext;
}
return pReversedHead;
}
以上函数就是将链表反转的具体操作,需要注意的是用到了3个指针变量同时操作。

你可能感兴趣的:(c/c++)