每天一道算法题(16)——翻转链表

来源:互联网 发布:传奇世界战士技能数据 编辑:程序博客网 时间:2024/06/05 15:20

题目

            反转单向链表。如1---->2---->3为3--->2----->1

思路

             使用两个临时指针,依次反转。

代码

 struct ListNode{       int        m_nKey;      ListNode*  next;};ListNode* DeleteNode(ListNode* pListHead){      if(!pListHead ||! pListHead->next )            return pListHead; ListNode* preNode=NULL; ListNode* nextNode=NULL; ListNode* currentNode=pListHead;  while(!currentNode){nextNode=currentNode->next;//保存下一节点currentNode->next=preNode;preNode=currentNode;currentNode=nextNode; } return preNode;} 

    注意当为单个节点或者是为空的情况




0 0
原创粉丝点击