博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
删除链表中重复的节点——重复节点不保留
阅读量:2381 次
发布时间:2019-05-10

本文共 928 字,大约阅读时间需要 3 分钟。

题目:

在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后为 1->2->5

代码:

/*struct ListNode {    int val;    struct ListNode *next;    ListNode(int x) :        val(x), next(NULL) {    }};*/class Solution {public:    ListNode* deleteDuplication(ListNode* pHead)    {        if(pHead == nullptr || pHead->next == nullptr)            return pHead;        ListNode* head = new ListNode(-1);        head->next = pHead;        ListNode* pre = head;        ListNode* cur = pHead;        while(cur != nullptr && cur->next != nullptr)        {            if(cur->val == cur->next->val)            {                int val = cur->val;                while(cur != nullptr && cur->val == val)                    cur = cur->next;                pre->next = cur;            }            else{                pre = cur;                cur = cur->next;            }        }        return head->next;    }};

参考资料:

《剑指offer》

转载地址:http://wtwab.baihongyu.com/

你可能感兴趣的文章
使用C#版本的gdal库打开hdf文件
查看>>
我们看人的眼光
查看>>
SDK应该包括什么东西
查看>>
一年多推行每日构建的经验总结
查看>>
VC和MATLAB混合开发经验总结
查看>>
Win Server2003安装VS 2005sp1出现的常见两个错误及解决办法
查看>>
利用VS安装项目打包软件的做法
查看>>
视频时代的反思
查看>>
开发培训体会——代码的价值
查看>>
开发培训体会——写好代码的一些基本原理
查看>>
Internet连接共享只能上qq不能打开网页的问题解决
查看>>
开发培训体会——写好代码的一些编码规则和设计原则
查看>>
出现<authentication mode="Windows"/>错误解决办法
查看>>
根据仿射变换参数实现从地理坐标转换为图像坐标的一个思考
查看>>
从VC 6.0移植代码到VS C++ 2005得出的一些经验
查看>>
fatal error C1859的有效解决办法
查看>>
《致加西亚的信》一书中的一个隐蔽错误
查看>>
英文版XP不能打开带有中文路径的chm文件的解决办法
查看>>
Intel比AMD高明在哪里?
查看>>
HDF文件的显示策略
查看>>