Remove Duplicates from Sorted List II
2015-06-18 16:32
281 查看
Description:
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.
For example,
Given
Given
Code:
Given a sorted linked list, delete all nodes that have duplicate numbers, leaving only distinct numbers from the original list.
For example,
Given
1->2->3->3->4->4->5, return
1->2->5.
Given
1->1->1->2->3, return
2->3.
Code:
ListNode* deleteDuplicates(ListNode* head) { if (head) { ListNode* p = head; ListNode* lastNode = head; int lastDeleteVal = 0; bool flag = false;//flag为false表示还没有元素被删除 while (p) { if ( (flag == true && p->val == lastDeleteVal) || (p->next!=NULL && p->val == p->next->val)) {//删除p lastDeleteVal = p->val; if (p == head) head = p->next; else lastNode->next = p->next; p = p->next; if (flag == false) flag = true; } else { lastNode = p; p = p->next; } } } return head; }
相关文章推荐
- 《C程序员:从校园到职场》出版预告(1):从“高大上”到“柴米油盐”
- Qt5官方demo解析集37——Vector Deformation
- 使用ssh获取公司搭建的git服务器上的代码
- shell脚本编程基础总结
- Android学习 11 ->控件之TextView和EditText
- 分支-10 计算个人所得税(10)
- 设置Myeclipse中的代码格式化、注释模板及保存时自动格式化
- 更改逻辑卷名称
- 人月神话读后感03
- 关于JQuery的autocomplete1.11.4版本插件的使用心得
- iOS问题
- 在Linux系统中使用xargs命令的教程
- handler.OpenRegionHandler: Failed open of region=[表名] ---异常的解决思路
- [Leetcode]Invert Binary Tree
- Masonry 和 cocopods 介绍及安装步骤
- GuozhongCrawler实现的基于redis的队列
- cocos2dx 3.x以上版本 lua中使用protobuf
- http,tcp,udp,tcp/ip ,socket之间的关系
- sql xml 查询指定节点值,以及节点属性值
- 织梦DedeCMS各种自定义当前位置顺序的方法