删除排序链表的所有重复节点
2016-11-16 11:01
232 查看
package 链表中; /** * 删除排序链表的所有重复节点 * @author buder_cp * */ public class removeDuplicatesFromSortedListII { public static ListNode deleteDuplicates(ListNode head) { ListNode newHead = new ListNode(0); newHead.next = head; ListNode pre = newHead; ListNode p = head; ListNode next = null; while (p != null && p.next != null ) { next = p.next; if (p.val == next.val) { while (next != null && next.val == p.val) { next = next.next; } pre.next = next; p = next; } else { pre = p; p = p.next; } } return newHead.next; } public static void main(String[] args) { int[] array = {1,2,3,3,4,4,4,4,4,5,66,66}; ListNode head = ListNode.arrayToList(array); head = deleteDuplicates(head); ListNode.printList(head); } }
相关文章推荐
- 给定一个排序的链表,删除所有具有重复数字的节点,从原始列表中只留下不同的数字。
- 面试金典--删除未排序链表重复节点
- 给定一个排序链表,删除所有重复的元素每个元素只留下一个。
- 删除排序链表的的重复节点
- 删除排序链表中重复的节点 递归方式
- 数据结构:单链表(二)之链表节点排序,升序插入数据,删除指定的所有节点,翻转链表操作
- 删除排序链表的重复节点
- LeetCode 刷题: 删除已排序链表中的重复节点
- LintCode删除排序链表中的重复数字 II - Java
- 删除链表中等于给定值val的所有节点
- 【剑指offer】面试题18:删除链表中重复的节点
- 删除链表中重复的节点
- lintcode-删除排序链表中的重复数字 II
- [JS]删除链表重复所有结点3
- 删除排序链表中的重复元素
- 链表所有为key的节点全部删除
- 删除排序链表中的重复元素
- 【IT笔试面试题整理】删除无序链表中重复的节点
- [LeetCode] Remove Duplicates from Sorted List 删除排序链表中的重复元素
- 删除链表中重复的节点(Java实现)