더북(TheBook)

삭제 노드가 마지막 노드일 때(#B-1)는 tail을 bef로 옮겨야 노드를 지울 수 있고, tail이 제 역할을 다할 수 있게 마지막 데이터를 가리키게 만들 수 있습니다.

258

그림 12-10 삭제 노드가 첫 번째 노드가 아니고 마지막 노드일 때 ①


그림 12-10처럼 cur이 tail과 겹칠 때는 그림 12-11처럼 tail을 bef로 옮겨야 데이터가 삭제된 후 tail이 마지막 데이터를 가리킬 수 있습니다.

258_2

그림 12-11 삭제 노드가 첫 번째 노드가 아니고 마지막 노드일 때 ②


이제 remove() 함수에서 가장 핵심적인 부분을 봅시다(#18).

259

그림 12-12 remove() 함수 핵심 코드

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.