inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

기출로 대비하는 개발자 전공면접 [CS 완전정복]

Q. Hash table는 어떤 자료구조 인가요?

Hash Table 질문

해결된 질문

350

정재윤

작성한 질문수 29

1

안녕하세요 강사님.

좋은 hash function의 조건에서 해시값이 고르게 분포되게 하는 것을 적어주셨는데, 공간효율성을 최대한 좋게 하기 위해서일까요?

 

아니면 다른 이유들도 있을까요?

면접 운영체제 기술면접

답변 1

1

개발남노씨

안녕하세요 재윤님.

good hash function의 목표는 해시값을 고르게 분포되게 하는 것입니다. 그 이유는 공간 효율성도 있겠지만, 가장 중요한 이유는 시간 효율 때문이기도 합니다.

해시값이 고르게 분포되지 않으면 계속 겹치게 됩니다. 즉 충돌 collision이 발생하죠. collision이 발생할때마다 이를 해결해야 하는데, open addressing 방식이든 seperate chaining이든 어떤 방식을 사용하여 이 문제를 해결하든 추가적으로 시간이 소요됩니다.

그래서 좋은 hash function을 통해 최대한 해시값이 충돌하지 않는게 최우선이고, 그럼에도 불구하고 충돌이 발생하면 위의 두 가지 방법(open addressing, seperate chaining)을 통해서 해결하는 것입니다.

 

질문에 대한 답이 됐을까요!!?

노션 접근이 안됩니다 ㅠㅠ

0

120

2

노션 공유 부탁드립니다.

0

58

2

노션 공유가 안됩니다!

0

152

2

프로세스가 많아질수록 segment table도 많아지는 건가요?

1

73

2

노션 공유가 사라졌습니다.

0

163

2

post 요청

0

56

1

http

0

64

1

mutex, semaphore와 deadllock

0

99

3

실행중인 프로세스는 메모리를 연속적으로? 아니면 불연속적으로 사용하나요?

0

72

1

노션 공유 요청 드립니다.

0

124

1

노션 공유 요청드립니다.

0

87

1

Dynamic Array와 Linked List의 시간복잡도에 대해서..

0

115

1

노션

0

110

1

질문이있습니다 선생님!

0

109

1

질문이있습니다 선생님!

0

99

1

질문이있습니다 선생님!

0

93

1

질문이있습니다 선생님!

0

163

2

질문이있습니다 선생님!

0

152

2

질문이 있습니다 선생님!

1

198

2

질문이 있습니다 선생님!

0

124

1

질문이있습니다 선생님!

0

88

1

질문이 있습니다 선생님!

0

109

1

질문이 있습니다 선생님!

0

91

1

물리적 메모리에 연속적으로 저장하지 않는 이유

0

133

1