题解 | #删除链表中重复的结点#
删除链表中重复的结点
http://www.nowcoder.com/practice/fc533c45b73a41b0b44ccba763f866ef
public class Solution {
public ListNode deleteDuplication(ListNode pHead) {
if(pHead==null){return pHead;}
ListNode ans=new ListNode(0);
ans.next=pHead;
ListNode res=ans;
ListNode last=res.next;
while(last!=null){
if(last.next!=null&&last.val==last.next.val){
while(last.next!=null&&last.val==last.next.val){
last=last.next;
}
//如leetcode题目83中,关键的一步,如果相同的算一次,那就取,并移动指针,res=res.next;
//如果相同的都删除,那就取下一个,不移动指针
res.next=last.next;
last=last.next;
}else{
res=res.next;
last=last.next;
}
}
return ans.next;
}
}