LeetCode2.2.5(Remove Duplicates from Sorted List II)
2015-08-29 09:48
495 查看
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.
对每一个元素,检查它的下一个元素是否与其相同,如果相同则向前滑动指针,一直找到一个不同的元素为止
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.
对每一个元素,检查它的下一个元素是否与其相同,如果相同则向前滑动指针,一直找到一个不同的元素为止
public static void solution_2_2_5(Node head){ Node pre=null,h=null,p=head; while(p!=null){ if(p.next==null||p.data!=p.next.data){ if(pre==null){ pre=p; h=pre; } else{ pre.next=p; pre=p; } } else{ while(p.next!=null&&p.data==p.next.data) p=p.next; } p=p.next; } pre.next=null; for(Node r=h;r!=null;r=r.next) System.out.print(r.data+" "); }
相关文章推荐
- 黑马程序员_集合框架(三)
- 阅兵奇葩服装:美军顶鸡毛掸子 伊军扮鬼妖
- 工作记录_HTML属性值调整
- 编译、解释与JIT
- 为什么无线信号(RSSI)是负值(转)
- 迷宫最短路径问题解析
- 1030 -- ASCII码排序
- 1029 -- 括号配对问题
- css中单位px和em,rem的区别
- PCI/PCIE 配置空间导读(1)
- Oracle 手动搜集统计信息
- 1028 -- 单词分隔
- hdu 4578 Transformation(线段树区间更新)
- C++派生类的构造函数和析构函数执行顺序及其构造形式
- 实用的Linux find命令示例
- TWinControl的DoubleBuffered属性的作用与举例
- 树形DP hdu1520
- 1027 -- Lucky Word
- 4970 Killing Monsters(前缀和问题)(类线段树)
- Delphi 和 DFM