예, 응답은 2입니다. 가끔씩 목록의 첫 번째 노드와 마지막 노드로 사용됩니다.
이 질문에 답하려면 더미 노드의 필요성과 사용을 이해해야합니다. 링크 목록 문제에 대한 도움으로이를 설명 할 것입니다.
단일 링크 목록에 노드를 삭제하면 그 노드에 대한 포인터 만 제공됩니다. 어떻게 삭제합니까 ?? 답변 : HEAD 노드가있는 경우 해당 노드를 찾아 삭제할 때까지 순회 할 수 있지만 마지막 노드가 NULL을 가리키고 있기 때문에 마지막 노드의 포인터가 있으면 작동하지 않습니다. 여기에 DUMMY 노드가 필요합니다. 나중에 삭제 노드의 새 노드를 만드는 데 도움이되는 빈 노드입니다.
이중 링크 목록의 경우이 문제는 어느 방향 으로든 발생할 수 있습니다. 더미 노드의 정의 : 목록의 앞/끝에있는 더미 노드로, 연결된 목록 작업에서 특수 사례 코드의 필요성을 줄입니다. 나중에 새 노드를 작성하기위한 빈 템플릿입니다. 여기서 문제는 어떤 헤드 노드도 없다는 것입니다.우리는 타겟 노드에 대해서만 포인터를 가진다.
해결 방법은 다음 노드에서 다음 노드로 데이터를 복사하고 다음 노드를 삭제하고 삭제할 대상을 지정합니다.
하지만 마지막 노드가 NULL을 가리키고 있기 때문에 마지막 노드의 포인터가 있으면이 작업이 수행되지 않습니다. 여기에 DUMMY 노드가 필요합니다. 나중에 삭제 노드의 새 노드를 만드는 데 도움이되는 빈 노드입니다.
이중 링크 목록의 경우이 문제는 어느 방향 으로든 발생할 수 있습니다.
더미 노드의 정의 : 링크 된 목록 작업에서 특수 사례 코드의 필요성을 줄이기 위해 목록의 앞/끝에있는 더미 노드. 나중에 새 노드를 작성하기위한 빈 템플릿입니다.
참조 :에 "항상/때로는/결코"선택 주어진 http://pages.cs.wisc.edu/~vernon/cs367/notes/4.LINKED-LIST.html 순수 테스트 촬영 기술에
이, 가장 좋은 건 "때때로"입니다. 그리고이 경우에 올바른 것입니다. – keshlam