프로그래밍[Univ]/데이터구조

[c언어]리스트 추가 내용

Cloud Travel 2009. 3. 18. 23:03

1. 포인터 리스트의 delete
  다른 페이지에서 설명한 position을 받아서 그 위치의 리스트를 없에는 것이 아니라,
  value를 받아서 그 값을 리스트에서 없에는 것을 알아보자.
  ex ) void delete(int item){
           temp = Lptr -> head;
           while((temp!=NULL)&&(Temp->Data!=item))  // 삭제해야 될 위치 직전을 가르킨다.(핵심)
              temp = temp -> next;
            ....//포인터 리스트에서 리스트 삭제 부분과 동일 생략.
          }

2. 이중 연결리스트
  노드가 자신 이전과 이후의 값을 가르킨다.
  따라서, 중간에 노드를 추가하기 위해서는 temp를 2번 사용하여 연결을 시킬 수 있다.

3. 원형연결리스트
  마지막 노드가 head노드를 가르켜 계속 회전한다.

2. 이중 연결리스트와 3.원형연결리스트 다음에 더욱 자세히 설명하겠다. 지금은 이것이 있는 것만을 인지하자.