解题思路:
只要指针指向结点的下一结点不为空,遍历链表,如果当前结点的值和下一结点的值相等,则修改指针,把当前结点的指针替换为下一结点的指针,从而实现把重复结点删除。
如果不想等,则把cur指针偏移到下一位继续遍历。
func deleteDuplicates(head *ListNode) *ListNode {
if head==nil{
return nil
}
cur:=head
for cur.Next!=nil{
if cur.Val==cur.Next.Val{
cur.Next=cur.Next.Next
}else{
cur=cur.Next
}
}
return head
}