개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.05.07 08:30

QuickHashIntStringHash::add 함수에 대한 질문

목록
  • 클라우드사제 6일 전 2025.05.07 08:30
  • 22
    1
QuickHashIntStringHash::add 함수를 공부하고 있는데,

함수에서
if (this->hashTable[i] == NULL)
조건문이 있습니다.
이 조건문이 무엇을 의미하는지 이해가 가지 않습니다.
저는 hash table이 비어있는 경우 NULL을 반환하는 것 같지만,
이 조건문은 hash table이 비어있는 경우를 체크하는 것일까요?
혹은 다른 의미를 가지는 것일까요?

혹시 이해가 가지 않는 부분에 대해 설명해주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  6일 전



    QuickHashIntStringHash::add 함수에서

    if (this->hashTable[i] == NULL)
    조건문은 hash table이 비어있는 경우를 체크하는 것이 아닙니다.

    이 조건문은 hash table의 각 인덱스에 할당된 노드가 NULL인지 확인하는 것입니다.

    hash table은 배열의 인덱스에 노드를 할당합니다. 이 노드는 key-value 쌍을 저장할 수 있는 구조체입니다.

    만약 해당 인덱스에 노드가 할당되지 않았을 경우, 노드는 NULL로 초기화됩니다.

    따라서 이 조건문은 해당 인덱스에 노드가 할당된 경우를 체크하는 것입니다.

    만약 노드가 할당되지 않았을 경우, 조건문은 true를 반환하고, 노드를 할당하여 key-value 쌍을 저장할 수 있습니다.

    이러한 조건문은 hash table의 노드 할당과 해제를 효율적으로 관리하기 위해 사용됩니다.

    2025-05-07 08:31

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 19,082건 / 96 페이지

검색

게시물 검색