260104의 TIL _ Set κ³Ό MapπŸ“–

ν˜Έλ‘Β·2026λ…„ 1μ›” 4일

βœ”οΈ Java / Spring

λͺ©λ‘ 보기
14/25

βœ… set

κ°’μ˜ 쀑볡을 ν—ˆμš©ν•˜μ§€ μ•Šκ³ , μˆœμ„œλ₯Ό 보μž₯ν•˜μ§€ μ•ŠλŠ” 자료ꡬ쑰

HashSet

  1. 쀑볡을 ν—ˆμš©ν•˜μ§€ μ•ŠλŠ”λ‹€.
  2. μˆœμ„œλ₯Ό 보μž₯ν•˜μ§€ μ•ŠλŠ”λ‹€.

➑️ λ°μ΄ν„°μ˜ μœ μΌμ„±λ§Œ μ€‘μš”ν•œ 경우 ‼️

LinkedHashSet

  1. 쀑볡을 ν—ˆμš©ν•˜μ§€ μ•ŠλŠ”λ‹€.
  2. λ°μ΄ν„°μ˜ μž…λ ₯ μˆœμ„œλ₯Ό 보μž₯ν•œλ‹€.
    : LinkedList λ₯Ό μΆ”κ°€ν•΄μ„œ μš”μ†Œλ“€μ˜ μˆœμ„œλ₯Ό 보μž₯
    Node에 데이터λ₯Ό μ €μž₯ν•΄ μž…λ ₯ μˆœμ„œλŒ€λ‘œ prev, next λ₯Ό λ„£μ–΄λ‘ 

➑️ λ°μ΄ν„°μ˜ μœ μΌμ„±κ³Ό μˆœμ„œκ°€ μ€‘μš”ν•  경우 ‼️

TreeSet

  1. 쀑볡을 ν—ˆμš©ν•˜μ§€ μ•ŠλŠ”λ‹€.
  2. 데이터λ₯Ό μ •λ ¬ν•œλ‹€.
    ( 3,4,1,2 -> 1,2,3,4 )

  1. μ„±λŠ₯ : O(log n) 의 μ„±λŠ₯
    : log2(16) = 4번 으둜 μ—°κ²°λ¦¬μŠ€νŠΈλ³΄λ‹€ λΉ λ₯΄κ²Œ, ν•΄μ‹œ 검색보닀 λŠλ¦¬λ‹€. κΈ°μ€€(Root) μ—μ„œλΆ€ν„° μž‘μœΌλ©΄ μ™Όμͺ½, 크면 였λ₯Έμͺ½μœΌλ‘œ μ €μž₯ν•˜λŠ” "μ΄μ§„νƒμƒ‰νŠΈλ¦¬" λ‹€.
  2. 트리의 κ· ν˜•μ΄ ν•œμͺ½μœΌλ‘œ μ λ¦¬λŠ” 경우 λ™μ μœΌλ‘œ κ· ν˜•μ„ λ‹€μ‹œ λ§žμΆ˜λ‹€.
  • 쑰회
    = μ‘°νšŒν•˜λ €λŠ” 값을 κΈ°μ€€μœΌλ‘œ λ£¨νŠΈλΆ€ν„° λΉ„κ΅ν•˜λ©° μ°Ύμ•„κ°„λ‹€.

  • 좜λ ₯
    = μ™Όμͺ½ λ…Έλ“œλΆ€ν„° ν˜„μž¬λ₯Ό 거쳐 였λ₯Έμͺ½ λ…Έλ“œ 순으둜 좜λ ₯ν•œλ‹€.


βœ… Map

key | value 둜 두 개λ₯Ό ν•©μΉœ entry μ—¬λŸ¬κ°œλ‘œ κ΅¬μ„±λ˜λŠ” 자료ꡬ쑰둜 μˆœμ„œλ₯Ό ν—ˆμš©ν•˜μ§€ μ•ŠλŠ”λ‹€.

βœ”οΈ key
쀑볡을 ν—ˆμš©ν•˜μ§€ μ•ŠλŠ”λ‹€. 이λ₯Ό 톡해 값을 λΉ λ₯΄κ²Œ 검색할 수 μžˆλ‹€.

βœ”οΈ value
쀑볡을 ν—ˆμš©ν•œλ‹€.

0개의 λŒ“κΈ€