검색결과 리스트
글
<원형 연결 리스트 삭제 연산>
원형 연결 리스트 CL에서 포인터 pre가 가리키는 노드의 다음 노드를 삭제하고 삭제한 노드는 자유 공간 리스트에 반환하는 연산이다.
1. if (CL = null) then error;
공백 리스트일 경우 삭제할 노드가 없기 때문에 에러
2. else {
old ← pre.link; // ①
pre.link ← old.link; // ②
if(old = CL) then // ③ - 1
CL ← old.link; // ③ - 2
returnNode(old); // ④
}
① old ← pre.link;
이전 노드(pre)의 다음 노드를 삭제할 노드로 지정
② pre.link ← old.link;
이전 노드(pre)의 다음 노드를 old.link인 삭제할 노드의 다음 노드로 지정
한마디로 old를 건너뛴다는 의미
③ - 1 if(old = CL) then
삭제할 노드가 원형 리스트의 첫 번째 노드일 경우
③ - 2 CL ← old.link;
CL(리스트 포인터)가 old.link인 첫번째 노드를 가리키게 한다.
두번째 노드가 리스트의 첫 번째 노드를 가리키게 한다.
Copyrightⓒ2014 By 한빛아카데미(주)
'Programming > Data Structure' 카테고리의 다른 글
이중 연결 리스트 삽입 연산 (2) | 2015.12.02 |
---|---|
이중 연결 리스트 (0) | 2015.12.01 |
원형 연결 리스트, 삽입 (0) | 2015.12.01 |
단순 연결리스트의 탐색 (0) | 2015.12.01 |
단순 연결 리스트의 삭제 (0) | 2015.12.01 |
RECENT COMMENT