Remove Duplicates from Sorted List II
2015-10-09 17:03
162 查看
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.
For example,
Given
Given
For example,
Given
1->2->3->3->4->4->5, return
1->2->5.
Given
1->1->1->2->3, return
2->3.
/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(int x) : val(x), next(NULL) {} * }; */ class Solution { public: ListNode* deleteDuplicates(ListNode* head) { if(head==NULL||head->next==NULL) return head; ListNode *dummy=new ListNode(0); dummy->next=head; ListNode *p=dummy,*tmp; while(p->next!=NULL) { if(p->next->next!=NULL) { if(p->next->val==p->next->next->val) { while(p->next->val==p->next->next->val) { tmp=p->next->next->next; p->next->next=tmp; if(p->next->next==NULL) break; } tmp=p->next->next; p->next=tmp; continue; } } p=p->next; if(p==NULL) break; } return dummy->next; } };
相关文章推荐
- iOS更改状态栏颜色__
- Cocos2d-x 3.0 事件系统【转】
- android 自定义 view 和 ViewGroup
- 计算几何模板补充(三维空间体积、平面、直线、向量相关计算。附上hdu4741,求异面直线的最短距离与交点)
- 如何让div透明,内容不透明【转】
- 修改apache默认端口80
- 50 Android hacks(hack15)
- Unity3D学习笔记——NGUI之UIToggle
- ViewPager体验
- hdoj 2067 小兔的棋盘 【大数+卡特兰数】
- 增删类名
- Python3.4与c/c++联调----ctypes
- Android程序的反编译对抗研究
- Remove Duplicates from Sorted Array II
- 151009
- hadoop 全局排序的 源码
- 程序猿的世界~~~~
- Document目录相关代码总结
- 面向初学者之烦人的mainactivity启动前的actionBAR
- mysql常用命令