#include “stdafx.h” #include <iostream> #include <fstream>using namespace std;struct ListNode {讯享网</span><span style="color: rgba(0, 0, 255, 1)">int</span><span style="color: rgba(0, 0, 0, 1)"> m_nKey; ListNode</span>*<span style="color: rgba(0, 0, 0, 1)"> m_pNext;};
讯享网//构造链表 void CreateList(ListNode *&pHead) {fstream fin(</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">list.txt</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">); ListNode </span>*pNode =<span style="color: rgba(0, 0, 0, 1)"> NULL; ListNode </span>*pTmp =<span style="color: rgba(0, 0, 0, 1)"> NULL; </span><span style="color: rgba(0, 0, 255, 1)">int</span><span style="color: rgba(0, 0, 0, 1)"> data; fin</span>>><span style="color: rgba(0, 0, 0, 1)">data; </span><span style="color: rgba(0, 0, 255, 1)">while</span><span style="color: rgba(0, 0, 0, 1)"> (data) { pNode </span>= <span style="color: rgba(0, 0, 255, 1)">new</span><span style="color: rgba(0, 0, 0, 1)"> ListNode; pNode</span>->m_nKey =<span style="color: rgba(0, 0, 0, 1)"> data; pNode</span>->m_pNext =<span style="color: rgba(0, 0, 0, 1)"> NULL; </span><span style="color: rgba(0, 0, 255, 1)">if</span> (NULL ==<span style="color: rgba(0, 0, 0, 1)"> pHead) { pHead </span>=<span style="color: rgba(0, 0, 0, 1)"> pNode; pTmp </span>=<span style="color: rgba(0, 0, 0, 1)"> pNode; } </span><span style="color: rgba(0, 0, 255, 1)">else</span><span style="color: rgba(0, 0, 0, 1)"> { pTmp</span>->m_pNext =<span style="color: rgba(0, 0, 0, 1)"> pNode; pTmp </span>=<span style="color: rgba(0, 0, 0, 1)"> pNode; } fin</span>>><span style="color: rgba(0, 0, 0, 1)">data; }}//翻转单链表 void ReverseLink(ListNode *&pHead) {讯享网</span><span style="color: rgba(0, 0, 255, 1)">if</span> (NULL ==<span style="color: rgba(0, 0, 0, 1)"> pHead) { </span><span style="color: rgba(0, 0, 255, 1)">return</span><span style="color: rgba(0, 0, 0, 1)">; } ListNode </span>*pNode =<span style="color: rgba(0, 0, 0, 1)"> pHead; ListNode </span>*Prev =<span style="color: rgba(0, 0, 0, 1)"> NULL; ListNode </span>*pNext =<span style="color: rgba(0, 0, 0, 1)"> NULL; </span><span style="color: rgba(0, 0, 255, 1)">while</span> (NULL !=<span style="color: rgba(0, 0, 0, 1)"> pNode) { pNext </span>= pNode-><span style="color: rgba(0, 0, 0, 1)">m_pNext; </span><span style="color: rgba(0, 0, 255, 1)">if</span> (NULL ==<span style="color: rgba(0, 0, 0, 1)"> pNext) { pHead </span>=<span style="color: rgba(0, 0, 0, 1)"> pNode; } pNode</span>->m_pNext =<span style="color: rgba(0, 0, 0, 1)"> Prev; Prev </span>=<span style="color: rgba(0, 0, 0, 1)"> pNode; pNode </span>=<span style="color: rgba(0, 0, 0, 1)"> pNext; }}void PrintList(ListNode *pHead) {</span><span style="color: rgba(0, 0, 255, 1)">if</span> (NULL ==<span style="color: rgba(0, 0, 0, 1)"> pHead) { </span><span style="color: rgba(0, 0, 255, 1)">return</span><span style="color: rgba(0, 0, 0, 1)">; } ListNode </span>*pNode =<span style="color: rgba(0, 0, 0, 1)"> pHead; </span><span style="color: rgba(0, 0, 255, 1)">while</span> (NULL !=<span style="color: rgba(0, 0, 0, 1)"> pNode) { cout</span><<pNode->m_nKey<<<span style="color: rgba(128, 0, 0, 1)">"</span> <span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">; pNode </span>= pNode-><span style="color: rgba(0, 0, 0, 1)">m_pNext; } cout</span><<<span style="color: rgba(0, 0, 0, 1)">endl;}int _tmain(int argc, _TCHAR* argv[]) {讯享网ListNode </span>*pHead =<span style="color: rgba(0, 0, 0, 1)"> NULL; cout</span><<<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">原来的链表:</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">; CreateList(pHead); PrintList(pHead); ReverseLink(pHead); cout</span><<<span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(128, 0, 0, 1)">翻转的链表:</span><span style="color: rgba(128, 0, 0, 1)">"</span><span style="color: rgba(0, 0, 0, 1)">; PrintList(pHead); </span><span style="color: rgba(0, 0, 255, 1)">return</span> <span style="color: rgba(128, 0, 128, 1)">0</span><span style="color: rgba(0, 0, 0, 1)">;}
讯享网


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/171889.html