์ฐ๊ด๋ฐฐ์ด ๊ตฌ์กฐ๋ฅผ ์ด์ฉํด key์ value๋ฅผ ์ ์ฅํ๋ ์๋ฃ๊ตฌ์กฐ
= key-value๋ก ์ด๋ฃจ์ด์ง ์๋ฃ๊ตฌ์กฐ
key 1๊ฐ์ value 1๊ฐ๊ฐ 1:1๋ก ์ฐ๊ด๋์ด ์๋ ์๋ฃ๊ตฌ์กฐ
= key๋ฅผ ์ด์ฉํด value๋ฅผ ๋์ถ
hash table์ Key ํค, Hash Function ํด์ ํจ์, Hash ํด์, Value ๊ฐ, Bucket(slot) ์ ์ฅ์๋ก ์ด๋ฃจ์ด์ ธ ์์
key๋ hash function์ ํตํด hash๋ก ๋ณ๊ฒฝ, hash๋ value์ ๋งค์นญ๋์ด ์ ์ฅ์์ ์ ์ฅ
key
1. ๊ณ ์ ํ ๊ฐ, hash function์ input
2. key๊ฐ์ ๊ทธ๋๋ก ์ ์ฅ์์ index๋ก ์ฌ์ฉํ ๊ฒฝ์ฐ key์ ๊ธธ์ด๋งํผ์ ์ ๋ณด๋ฅผ ์ ์ฅํด์ผ ํ๋ ๊ณต๊ฐ๋ ๋ง๋ จํด์ผ ํ๋ฏ๋ก ๊ณ ์ ๋ ๊ธธ์ด์ hash๋ก ๋ณ๊ฒฝ
hash function
1. key๋ฅผ hash๋ก ๋ฐ๊ฟ์ฃผ๋ ์ญํ
2. ๋ค์ํ ๊ธธ์ด๋ฅผ ๊ฐ์ง๊ณ ์๋ key๋ฅผ ์ผ์ ํ ๊ธธ์ด๋ฅผ ๊ฐ์ง๋ hash๋ก ๋ณ๊ฒฝํ์ฌ ์ ์ฅ์๋ฅผ ํจ์จ์ ์ผ๋ก ์ด์ํ ์ ์๋๋ก ๋์์ค
3. ์๋ก ๋ค๋ฅธ key -> ๊ฐ์ hash๊ฐ ๋๋ ๊ฒฝ์ฐ = ํด์ฌ ์ถฉ๋
(ํด์ฌ ์ถฉ๋์ ์ผ์ผํค๋ ํ๋ฅ ์ ์ต๋ํ ์ค์ด๋ ํจ์๋ฅผ ๋ง๋๋๊ฒ์ด ์ค์ํจ)
value
1. ์ ์ฅ์(๋ฒํท, ์ฌ๋กฏ)์ ์ต์ข
์ ์ผ๋ก ์ ์ฅ๋๋ ๊ฐ
2. key์ ๋งค์นญ๋์ด ์ ์ฅ, ์ญ์ , ๊ฒ์, ์ ๊ทผ์ด ๊ฐ๋ฅ
hash
1. hash function์ ๊ฒฐ๊ณผ๋ฌผ, ์ ์ฅ์์์ value์ ๋งค์นญ๋์ด ์ ์ฅ๋จ
Hash = ์ธ๋ฑ์ค, Hash Function = key->hash๋ก ๋ง๋ค์ด์ฃผ๋ function, Hash Table = hash๋ฅผ ์ฃผ์๋ก ์ผ์ ๋ฐ์ดํฐ ์ ์ฅํ๋ ์๋ฃ๊ตฌ์กฐ