λͺ©λ‘μ•Œκ³ λ¦¬μ¦˜ (4)

λ‚˜μ˜ λͺ¨μ–‘

026 | Time Complexity

πŸ’™ μ‹œκ°„ λ³΅μž‘λ„ μ•Œκ³ λ¦¬μ¦˜μ—μ„œλŠ” λ¬Έμ œμ— λŒ€ν•œ 해닡을 μ°ΎλŠ” 것과 ν•¨κ»˜ μ–Όλ§ˆλ‚˜ 효율적인 λ°©λ²•μœΌλ‘œ 문제λ₯Ό ν•΄κ²°ν–ˆλŠ”μ§€λ„ μ€‘μš”ν•˜λ‹€. 문제λ₯Ό ν’€λ‹€κ°€ 더 효율적인 방법은 뭐가 μžˆμ„μ§€, 이게 제일 쒋은 방법이 λ§žμ„μ§€ κ³ λ―Όν•˜λŠ” 것은 μ‹œκ°„ λ³΅μž‘λ„λ₯Ό κ³ λ―Όν•œλ‹€λŠ” 것과 κ°™λ‹€. 🀍 κ°œλ… μž…λ ₯κ°’μ˜ 변화에 따라 연산을 μ‹€ν–‰ν•  λ•Œ, μ—°μ‚° νšŸμˆ˜μ— λΉ„ν•΄ μ–Όλ§ŒνΌμ˜ μ‹œκ°„μ΄ κ±Έλ¦¬λŠ”μ§€λ₯Ό κ³ λ €ν•˜λŠ” 것 효율적인 μ•Œκ³ λ¦¬μ¦˜μ„ κ΅¬ν˜„ν•˜λŠ” 것 = μž…λ ₯값이 컀짐에 따라 μ¦κ°€ν•˜λŠ” μ‹œκ°„μ˜ λΉ„μœ¨μ„ μ΅œμ†Œν™”ν•œ 것 🀍 λΆ„λ₯˜ μ΅œμ•…μ˜ 경우(Worst Case): μ΅œμ•…μ˜ μ‹œλ‚˜λ¦¬μ˜€λ‘œ, λΉ… 였(Big-O) ν‘œκΈ°λ²• μ‚¬μš© μ΅œμ„ μ˜ 경우(Best Case): μ΅œμ„ μ˜ μ‹œλ‚˜λ¦¬μ˜€λ‘œ, λΉ… μ˜€λ©”κ°€(Big-Ω) ν‘œκΈ°λ²• μ‚¬μš© 평균적인 경우(Average Case): 평균 μ‹œκ°„μ„ λ‚˜νƒ€λ‚΄λ©°, λΉ… 세타(..

SEB/TIL 2022. 7. 28. 21:06
024 | Data Structure - Tree, Graph

πŸ’™ Tree 🀍 κ°œλ… 계측적 자료ꡬ쑰 λŒ€μƒ μ •λ³΄μ˜ 각 ν•­λͺ©λ“€μ„ κ³„μΈ΅μ μœΌλ‘œ μ—°κ΄€λ˜λ„λ‘ κ΅¬μ‘°ν™”μ‹œν‚€κ³ μž ν•  λ•Œ μ‚¬μš©ν•˜λŠ” λΉ„μ„ ν˜• 자료ꡬ쑰 단방ν–₯ κ·Έλž˜ν”„ 깊이 (depth) λ£¨νŠΈλ‘œλΆ€ν„° ν•˜μœ„ κ³„μΈ΅μ˜ νŠΉμ • λ…Έλ“œκΉŒμ§€μ˜ 깊이(depth)λ₯Ό ν‘œν˜„ 레벨(Level) 같은 깊이λ₯Ό 가지고 μžˆλŠ” λ…Έλ“œμ˜ 묢음 ν˜•μ œ λ…Έλ“œ(Sibling Node): 같은 λ ˆλ²¨μ— λ‚˜λž€νžˆ μžˆλŠ” λ…Έλ“œ 높이(Height) 리프 λ…Έλ“œλ₯Ό κΈ°μ€€μœΌλ‘œ λ£¨νŠΈκΉŒμ§€μ˜ 높이(height)λ₯Ό ν‘œν˜„ 리프 λ…Έλ“œμ™€ μ§κ°„μ ‘μ μœΌλ‘œ μ—°κ²°λœ λ…Έλ“œμ˜ 높이λ₯Ό ν‘œν˜„ λΆ€λͺ¨ λ…Έλ“œλŠ” μžμ‹ λ…Έλ“œμ˜ κ°€μž₯ 높은 height 값에 +1ν•œ 값을 λ†’μ΄λ‘œ 가짐 트리 ꡬ쑰의 높이λ₯Ό ν‘œν˜„ν•  λ•Œμ—λŠ” 각 리프 λ…Έλ“œμ˜ 높이λ₯Ό 0으둜 λ†“μŒ μ„œλΈŒ 트리(Sub tree) 트리 ꡬ쑰의 rootμ—μ„œ λ»—μ–΄ λ‚˜μ˜€λŠ” 큰 트리의 λ‚΄λΆ€..

SEB/TIL 2022. 7. 26. 20:49