leetcode 주제 노트 83 정렬된 연결 목록에서 중복 요소 삭제

정렬된 연결 목록의 헤드가 주어지면  head 각  요소가 한 번만 나타나도록 모든 중복 요소를 제거합니다  . 정렬된 연결 목록을 반환합니다   .

 

입력: 헤드 = [1,1,2]
 출력: [1,2]

아이디어 1: 질문의 의미 시뮬레이션

struct ListNode* deleteDuplicates(struct ListNode* head){
    if(head==NULL||head->next==NULL)return head;
    struct ListNode*p = head,*q = head->next;
    while(q!=NULL)
    {
        if(p->val==q->val)p->next = q->next;
        else{
        p = p->next;
    }
    q = q->next;
    }
    return head;   

}

분석하다:

이 질문은 앞의 질문과 비슷하지만 반복되는 요소를 모두 삭제하는 것이 아니라 많은 반복되는 요소를 삭제하는 것입니다. 링크드 리스트, 마지막으로 링크드 리스트 출력

요약하다:

이 질문은 연결 리스트의 삭제 동작을 살펴보는 것으로, 판단문을 추가하여 만들 수 있습니다.

추천

출처blog.csdn.net/si_mple_/article/details/132326933