정렬 된 링크 에 중복 되 는 노드 가 존재 합 니 다. 이 링크 에서 중복 되 는 노드 를 삭제 하 십시오. 중복 되 는 노드 는 보류 하지 않 고 체인 헤더 포인터 (js 코드) 를 되 돌려 주 십시오.
정렬 된 링크 에 중복 되 는 노드 가 존재 합 니 다. 이 링크 에서 중복 되 는 노드 를 삭제 하 십시오. 중복 되 는 노드 는 보류 하지 않 고 체인 헤더 지침 을 되 돌려 주 십시오.예 를 들 어 링크 1 - > 2 - > 3 - > 3 - > 4 - > 5 처리 후 1 - > 2 - > 5 입 니 다.
2. 코드 구현
/*function ListNode(x){
this.val = x;
this.next = null;
}*/
function deleteDuplication(pHead)
{
if (pHead == null) return null;//
var p = pHead;
var n = new ListNode(0);// 0
var pre = n;//pre ,
n.next = pHead;// pHead
while (p!= null) {
//p null
var q = p.next;//q p
if (q == null) break;
if (q.val == p.val) {
//
while (q != null && q.val == p.val) {
q = q.next;// ,
}
pre.next = q;//
} else {
pre = p; //pre
}
p=q;
}
return n.next;
}
실행 시간: 12ms 메모리 사용량: 5336 k