剑指offer---删除链表中重复的结点
class Solution { public: ListNode* deleteDuplication(ListNode* pHead) { if (pHead == NULL) return pHead; if (pHead->next == NULL) return pHead; int First = pHead->val; ListNode* head = new ListNode(First + 1); head->next = NULL; head->next = pHead; ListNode* Cur=head; ListNode* Next=Cur->next; while (Next != NULL) { while ((Next->next != NULL) && (Next->next->val == Next->val)) { Next = Next->next; } if (Cur->next != Next) { Next = Next->next; Cur->next = Next; } else { Cur = Next; Next = Next->next; } } return head->next; } };
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步