Hashing

1. Hashing μ΄λž€?

  • κ°€μž₯ 많이 μ“°μ΄λŠ” μ•”ν˜Έν™” 방식

  • λ³΅ν˜Έν™”κ°€ κ°€λŠ₯ν•œ λ‹€λ₯Έ μ•”ν˜Έν™” λ°©μ‹κ³ΌλŠ” 달리, 해싱은 μ•”ν˜Έν™”λ§Œ κ°€λŠ₯

  • ν•΄μ‹œ ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•΄ μ•”ν˜Έν™”λ₯Ό μ§„ν–‰

  • ν•΄μ‹œ ν•¨μˆ˜μ˜ νŠΉμ§•

    • 항상 같은 길이의 λ¬Έμžμ—΄ 리턴

    • μ„œλ‘œ λ‹€λ₯Έ λ¬Έμžμ—΄μ— λ™μΌν•œ ν•΄μ‹œ ν•¨μˆ˜ μ‚¬μš©μ‹œ λ°˜λ“œμ‹œ λ‹€λ₯Έ 결과값이 λ‚˜μ˜΄

    • λ™μΌν•œ λ¬Έμžμ—΄μ— λ™μΌν•œ ν•΄μ‹œ ν•¨μˆ˜ μ‚¬μš©μ‹œ 항상 같은 κ²°κ³Όκ°’ λ‚˜μ˜΄

  • 레인보우 ν…Œμ΄λΈ”

    • 항상 같은 결과값이 λ‚˜μ˜¨λ‹€λŠ” νŠΉμ„±μ„ μ΄μš©ν•΄ ν•΄μ‹œ ν•¨μˆ˜λ₯Ό 거치기 μ΄μ „μ˜ 값을 μ•Œμ•„λ‚΄λ„λ‘ κΈ°λ‘ν•œ ν‘œ

    • λ³΄μ•ˆμƒ μœ„ν˜‘μ΄ λ μˆ˜λ„ 있음

  • μ†”νŠΈ

    • ν•΄μ‹± 이전 값에 μž„μ˜μ˜ 값을 더해 값을 μ•Œμ•„λ‚΄κΈ° μ–΄λ ΅κ²Œ λ§Œλ“¦

  • ν•΄μ‹±μ˜ λͺ©μ 

    • 데이터 κ·Έ 자체λ₯Ό μ‚¬μš©ν•˜λŠ” 것이 μ•„λ‹ˆλΌ, λ™μΌν•œ κ°’μ˜ 데이터λ₯Ό μ‚¬μš©ν•˜λŠ”μ§€ μ—¬λΆ€λ§Œ 확인

    • μ •ν™•ν•œ 값을 λͺ°λΌλ„ ν•΄μ‹±ν•œ 값이 μΌμΉ˜ν•œλ‹€λ©΄, ν•΄μ‹± κ°’μœΌλ‘œλ§Œ 둜그인 μš”μ²­ μ²˜λ¦¬ν•΄λ„ 됨

    • 즉, λ―Όκ°ν•œ 데이터λ₯Ό 닀루어야 ν•˜λŠ” μƒν™©μ—μ„œ 데이터 유좜의 μœ„ν—˜μ€ μ€„μ΄λ©΄μ„œ μœ νš¨μ„±μ„ κ²€μ¦ν•˜λŠ” 단방ν–₯ μ•”ν˜Έν™” 방식

Last updated