삭제 노드가 마지막 노드일 때(#B-1)는 tail을 bef로 옮겨야 노드를 지울 수 있고, tail이 제 역할을 다할 수 있게 마지막 데이터를 가리키게 만들 수 있습니다.
그림 12-10 삭제 노드가 첫 번째 노드가 아니고 마지막 노드일 때 ①
그림 12-10처럼 cur이 tail과 겹칠 때는 그림 12-11처럼 tail을 bef로 옮겨야 데이터가 삭제된 후 tail이 마지막 데이터를 가리킬 수 있습니다.
그림 12-11 삭제 노드가 첫 번째 노드가 아니고 마지막 노드일 때 ②
이제 remove() 함수에서 가장 핵심적인 부분을 봅시다(#18).
그림 12-12 remove() 함수 핵심 코드