1. 程式人生 > >題目二:刪除鏈表中重復的節點

題目二:刪除鏈表中重復的節點

while 重復 span lis pos ren ret bsp null

    public ListNode deleteDuplication(ListNode pHead)
    {
        if(pHead==null){
            return null;
        }
        ListNode preNode = null;
        ListNode curNode = pHead;

        while(curNode != null){
            ListNode nextNode=curNode.next;
            boolean needDeleted = false
; if(nextNode!=null && curNode.val == nextNode.val){ needDeleted=true; } if(!needDeleted){ preNode=curNode; curNode=curNode.next; }else { int value=curNode.val; ListNode toBeDeleted
= curNode; while(toBeDeleted!=null && toBeDeleted.val == value){ nextNode=toBeDeleted.next; toBeDeleted.next=null; toBeDeleted=nextNode; } curNode=toBeDeleted; if(preNode==null
){ pHead= curNode; }else{ preNode.next=curNode; } } } return pHead; }

題目二:刪除鏈表中重復的節點