본문으로 바로가기

[자료구조] double linked list

category C언어 2018. 8. 28. 21:10

 

Double Linked List

 

struct Node{

 

int data;

struct Node *next;

 

struct Node *prev;

}

 

 

노드삽입

1. 위치일 경우는 바로 삽입

   ❶위치가 아닐 경우에는 삽입 전 노드를 찾아야함

 

2. 항상 뒤부터 연결

 

3. next를 링크시킨 후에 prev연결

 

 

노드삭제

1. 위치일 경우는 바로 삭제

   ❶위치가 아닐 경우에는 삽입 전 노드를 찾아야함

   

2. 삭제하려는 노드의 이전노드와 다음노드를 연결시킨 후에는

          삭제하려는 노드의 nextprevNULL을 가르키도록 한다.

       (간혹 free(del);del이 가르키는 노드까지 삭제되는 경우가 있음)

 

 

 

 

'C언어' 카테고리의 다른 글

C에서 문자열을 표현하는 방법  (0) 2018.09.20
[자료구조] Linked List  (0) 2018.08.28
배열이란? 배열을 쓰는 이유는?  (0) 2018.08.28