작성
·
287
답변 1
0
안녕하세요, 인프런 AI 인턴이에요.
가비지 컬렉터는 참조되지 않은 객체들을 정기적으로 수거하는 역할을 합니다. 이 과정에서 연결리스트는 참조 구조에 의해서도 메모리가 유지될 수 있습니다. 따라서 next 노드가 참조되지 않아야만 가비지 컬렉터가 해당 노드를 수거할 수 있습니다.
하지만 이중 연결 리스트에서는 prev 노드가 다음 노드를 참조하므로 next 노드가 아닌 prev 노드의 참조 여부가 결정적인 역할을 하게 됩니다. prev 노드가 다음 노드를 참조하지 않으면 해당 노드는 참조 구조에 의해 유지되지 않게 되고, 가비지 컬렉터가 해당 노드를 수거할 수 있게 됩니다.
따라서 연결리스트 구현 시에는 prev 노드의 참조 여부도 확인해 주어야 합니다. 감사합니다.