[TIL] 220214

Lee SyongΒ·2022λ…„ 2μ›” 13일
0

TIL

λͺ©λ‘ 보기
178/204
post-thumbnail

πŸ“ 였늘 ν•œ 것

  1. ν•΄μ‹œ ν…Œμ΄λΈ” μˆ˜μ • 쀑

πŸ“š 배운 것

1. μ½”λ“œ 리뷰 정리

1) ν•΄μ‹œ ν…Œμ΄λΈ” μˆ˜μ • (~ing)

(1) ν•΄μ‹œ 좩돌 ν•΄κ²° 방법 - μ—°κ²° 리슀트 이용

  • ν•΄μ‹œ μΆ©λŒμ„ μ—°κ²° 리슀트λ₯Ό μ΄μš©ν•΄ ν•΄κ²°ν•˜κ³ μž ν–ˆλ‹€.

  • λ‚˜λŠ” 단일 객체와 μ—°κ²° 리슀트둜 λ‚˜λˆ μ„œ μƒκ°ν•˜μ—¬ μ½”λ“œκ°€ λ³΅μž‘ν•΄μ‘Œλ‹€.
    κ·ΈλŸ¬λ‚˜ 같은 μΈλ±μŠ€μ— 데이터가 1κ°œμ—¬λ„ μ• λ‹Ήμ΄ˆ μ—°κ²° 리슀트λ₯Ό μ΄μš©ν•˜λ©΄ μ½”λ“œλ₯Ό 더 κΉ”λ”ν•˜κ²Œ μž‘μ„±ν•  수 μžˆλ‹€.

(2) 리사이징

  • ν•΄μ‹œ ν…Œμ΄λΈ” μƒμ„±μž ν•¨μˆ˜μ— this._size = 0을 μΆ”κ°€ν•œλ‹€.

  • 미리 μ΅œλŒ“κ°’μœΌλ‘œ 지정해쀀 λ©”λͺ¨λ¦¬ 곡간이 λͺ¨λ‘ μ°¨κ³ , μ—°κ²° 리슀트의 길이도 κΈΈμ–΄μ§€κ²Œ 되면 ν•΄μ‹œ ν…Œμ΄λΈ” 검색 μ—°μ‚°μ˜ νš¨μœ¨μ„±μ΄ 떨어진닀.

  • λ”°λΌμ„œ, λ©”λͺ¨λ¦¬κ°€ 70% 정도 차게 되면 μƒˆλ‘­κ²Œ 리사이징 ν•˜λŠ” 것이 μ’‹λ‹€.

  • HashTable.prototype.insertμ—μ„œλŠ” λ‚΄λΆ€ λ°°μ—΄μ˜ 크기λ₯Ό 늘리고, κΈ°μ‘΄ μ—°κ²° 리슀트의 데이터λ₯Ό μž¬ν• λ‹Ήν•΄μ•Ό ν•œλ‹€.

  • HashTable.prototype.removeμ—μ„œλŠ” λ‚΄λΆ€ λ°°μ—΄μ˜ 크기λ₯Ό 쀄여야 ν•œλ‹€.

(3) 쀑간 λ…Έλ“œ 제거

  • HashTable.prototype.removeμ—μ„œλ„ 단일 객체와 μ—°κ²° 리슀트둜 λ‚˜λˆ μ„œ μƒκ°ν–ˆλ‹€.

  • μ—°κ²° 리슀트의 쀑간 λ…Έλ“œλ„ μ œκ±°ν•  수 μžˆλŠ” μ½”λ“œλ₯Ό μž‘μ„±ν•΄μ•Ό ν•œλ‹€.

(4) λͺ¨λ“ˆν™”

  • μ—°κ²° 리슀트 μ½”λ“œλ₯Ό ν•΄μ‹œ ν…Œμ΄λΈ” μ½”λ“œμ™€ 뢄리해야 ν•œλ‹€.

✨ 내일 ν•  것

  1. ν•΄μ‹œ ν…Œμ΄λΈ” μˆ˜μ • 마무리
profile
λŠ₯λ™μ μœΌλ‘œ μ‚΄μž, ν–‰λ³΅ν•˜κ²ŒπŸ˜

0개의 λŒ“κΈ€