您的位置:首页 > 其它

删除排序链表的重复节点

2016-11-16 10:49 232 查看
package 链表中;
/**
* 删除排序链表的重复节点
* @author buder_cp
*
*/
public class removeDuplicatesFromSortedList {
public static ListNode deleteDuplicates(ListNode head) {
ListNode pre = head;
ListNode p = head.next;
while (p != null) {
if (pre.val == p.val) {
while (p != null && pre.val == p.val) {
p = p.next;
}
pre.next = p;
} else {
pre = p;
p = p.next;
}
}
return head;
}

public static void main(String[] args) {
int[] array = {1,2,2,2,2,2,2,2,2,2,3,4,5,6,7,8};
ListNode head = ListNode.arrayToList(array);
head = deleteDuplicates(head);
ListNode.printList(head);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  链表