반응형

해시 테이블 2

해시 테이블(Hash-Table)이란?

1. 해시 테이블이란? 해시 맵이라고도 하는 해시 테이블은 키-값 쌍을 효율적으로 저장하고 검색할 수 있는 데이터 구조입니다. 즉, 각 데이터는 고유 키를 기반으로 테이블에 저장됩니다. 또한 해싱이라는 기술을 사용하여 키를 기본 배열의 특정 위치에 매핑하여 관련 값에 빠르게 액세스할 수 있도록 합니다. 해시 테이블은 버킷 배열로 구성되며, 각 버킷은 앞에서 설명한 것과 같이 하나 이상의 키-값 쌍을 저장할 수 있습니다. 해시 테이블은 해시 함수를 사용하여 키를 가져와서 해시 함수를 적용하는 방식으로 작동합니다. 해시 함수는 키-값 쌍이 저장되어야 하는 배열의 인덱스를 반환합니다. 그 다음 해시 값을 사용하여 테이블에서 데이터 위치를 결정합니다. 해시 함수는 두 개의 키가 동일한 인덱스에 해시할 때 발생하..

공부/자료구조 2023.06.03

C#에서 Dictionary는 맵일까?, 해쉬 맵일까?

C#에서 Dictionary 데이터 구조는 해시 맵의 한 유형인 해시 테이블을 구현한 것입니다. 해시 테이블은 해시 함수를 사용하여 키를 배열의 인덱스에 매핑하는 데이터 구조입니다. 배열의 각 인덱스는 동일한 인덱스에 매핑되는 값을 포함하는 링크된 목록 또는 버킷과 연결됩니다. 해시 함수는 특정 키가 포함된 버킷을 빠르게 찾는 데 사용되며, 링크된 목록 또는 버킷은 여러 키가 동일한 인덱스에 매핑될 때 발생하는 모든 충돌을 해결하는 데 사용됩니다. C#의 Dictionary 클래스는 해시 테이블을 사용하여 키-값 쌍을 저장합니다. 이 클래스는 키의 해시 코드를 사용하여 키-값 쌍이 저장되어야 하는 내부 배열의 인덱스를 결정한 다음, 동일성 비교를 사용하여 해당 인덱스와 연결된 버킷 내에서 특정 키-값 쌍..

공부/C# 2023.03.05
반응형