核心思想:因?yàn)閱捂湵淼闹赶蚴菃蜗虻模砸坏┪覀兏淖兞艘粋€(gè)結(jié)點(diǎn)指針的指向,這個(gè)鏈就斷開了,那我們怎么解決呢,我們可以把前后的結(jié)點(diǎn)指針給保存起來,這樣就直接可以通過變量名直接指向了。
//題目:定義一個(gè)函數(shù),輸入一個(gè)鏈表的頭結(jié)點(diǎn),反轉(zhuǎn)該鏈表并輸出翻轉(zhuǎn)后鏈表的頭結(jié)點(diǎn)//鏈表的定義如下:struct ListNode{ int m_nValue; ListNode* m_pNext;};ListNode* ReversseList(ListNode* pHead){ ListNode* PReversedHead = NULL; ListNode*pNode = pHead; ListNode*pPrev = NULL; while (pNode != NULL) { ListNode* pNext = pNode->m_pNext; if (pNode->m_pNext==NULL)//翻轉(zhuǎn)后的頭結(jié)點(diǎn)一定是原始鏈表的尾結(jié)點(diǎn) { pReversedHead = pNode; } pNode->m_pNext = pPrev; pPrev = pNode; pNode = pNext; } return pReversedHead;}新聞熱點(diǎn)
疑難解答