题目描述
解题描述
//递归
public ListNode deleteDuplication(ListNode pHead) {
//如果没有节点或者只有一个
if (pHead == null || pHead.next == null)
return pHead;
//如果多个,找到下一个
ListNode next = pHead.next;
//如果当前值和下一个相等
if (pHead.val == next.val) {
//当下一个节点不为空且当前值和下一个相等时候
while (next != null && pHead.val == next.val)
//继续找下下一个
next = next.next;
//当最后一个节点或者 当前和下一个的值不相等,继续递归
return deleteDuplication(next);
} else {
//不相等,那就继续递归
pHead.next = deleteDuplication(pHead.next);
return pHead;
}
}