LILDB

🐹 9. Math & Logic puzzles

06. μˆ˜ν•™ 및 논리 퍼즐 [ μ†Œμˆ˜ ] λͺ¨λ“  μžμ—°μˆ˜λŠ” μ†Œμˆ˜μ˜ 곱으둜 λ‚˜νƒ€λ‚Ό 수 μžˆλ‹€λŠ” κ·œμΉ™μ΄ μžˆλ‹€. [84=2^2* 3^15^07^111^013^017^0 \cdots] μœ„μ˜ μˆ˜μ‹μ—μ„œ λ§Žμ€ μ†Œμˆ˜μ˜ μ§€μˆ˜ 뢀뢄이 0이닀. κ°€λΆ„μ„±(divisibility) μœ„μ— μ–ΈκΈ‰ν•œ κ·œμΉ™μ— λ”°λ₯΄λ©΄ μ–΄λ–€ 수 x둜 yλ₯Ό λ‚˜λˆŒ 수 있으렀면 xλ₯Ό μ†Œμˆ˜μ˜ 곱으둜 λΆ„ν• ν•˜μ˜€...

🐒 9. Math & Logic puzzles

🫧 μ†Œμˆ˜ λͺ¨λ“  μžμ—°μˆ˜λŠ” μ†Œμˆ˜μ˜ 곱으둜 λ‚˜νƒ€λ‚Ό 수 μžˆλ‹€ λ§Žμ€ μ†Œμˆ˜μ˜ μ§€μˆ˜ 뢀뢄이 0 μž„ κ°€λΆ„μ„± (divisibility) μ–΄λ–€ 수 x둜 yλ₯Ό λ‚˜λˆŒ 수 있으렀면 x/y λ˜λŠ” mod(y, x) = 0 으둜 ν‘œν˜„ xλ₯Ό μ†Œμˆ˜μ˜ 곱으둜 λΆ„ν• ν•˜μ˜€μ„ λ•Œ λ‚˜μ—΄λ˜λŠ” λͺ¨λ“  μ†Œμˆ˜λ₯Ό yλ₯Ό μ†Œμˆ˜μ˜ 곱으둜 λΆ„ν• ν•˜μ˜€μ„ λ•Œ λ‚˜μ—΄λ˜λŠ” λͺ¨...

🦊 9. Math & Logic puzzles

9. Math & Logic puzzles μ†Œμˆ˜ λͺ¨λ“  μžμ—°μˆ˜λŠ” μ†Œμˆ˜μ˜ 곱으둜 λ‚˜νƒ€λ‚Ό 수 μžˆλ‹€λŠ” κ·œμΉ™μ΄ μžˆλ‹€. κ°€λΆ„μ„±(divisibility) μ–΄λ–€ 수 x둜 yλ₯Ό λ‚˜λˆŒ 수 있으면 xλ₯Ό μ†Œμˆ˜μ˜ 곱으둜 λΆ„ν• ν•˜μ˜€μ„ λ•Œ λ‚˜μ—΄λ˜λŠ” λͺ¨λ“  μ†Œμˆ˜λŠ” yλ₯Ό μ†Œμˆ˜μ˜ 곱으둜 λΆ„ν• ν•˜μ˜€μ„ λ•Œ λ‚˜μ—΄λ˜λŠ” λͺ¨λ“  μ†Œμˆ˜λ“€μ˜ 뢀뢄집합이어야 ν•œλ‹€. μ†Œμˆ˜νŒλ³„ 2μ—μ„œ n...

🐹 chap11. null λŒ€μ‹  Optional 클래슀

11.1 값이 μ—†λŠ” 상황을 μ–΄λ–»κ²Œ μ²˜λ¦¬ν• κΉŒ? λ‹€μŒμ²˜λŸΌ μžλ™μ°¨μ™€ μžλ™μ°¨ λ³΄ν—˜μ„ κ°–κ³  μžˆλŠ” μ‚¬λžŒ 객체λ₯Ό 쀑첩 ꡬ쑰둜 κ΅¬ν˜„ν–ˆλ‹€κ³  ν•˜μž. // Person/Car/Insurance 데이터 λͺ¨λΈ public class Person { private Car car; public Car getCar() { return car; } } publi...

🦊 chap11. null λŒ€μ‹  Optional 클래슀

chap11. null λŒ€μ‹  Optioanl 클래슀 11.1 값이 μ—†λŠ” 상황을 μ–΄λ–»κ²Œ μ²˜λ¦¬ν• κΉŒ? 11.1.1 보수적인 μžμ„Έλ‘œ NullPointerException 쀄이기 κΉŠμ€ μ˜μ‹¬ public String getCarInsuranceName(Person person) { if (person != null) { Car car =...

🐒 chap10. μœ λ‹‰μŠ€μ˜ 역사와 μ•„ν‚€ν…μ²˜

⭐ 10.1 μœ λ‹‰μŠ€μ˜ 역사 βœ… 10.1.1 λ©€ν‹±μŠ€μ™€ μœ λ‹‰μŠ€ μœ λ‹‰μŠ€ 이전에 벨 μ—°κ΅¬μ†Œκ°€ μ£Όλ„ν•œ λ©€ν‹±μŠ€ OS μœ λ‹‰μŠ€μ˜ μ„ κ΅¬μžμ˜€λ˜ 켐 ν†°μŠ¨μ΄λ‚˜ λ°λ‹ˆμŠ€ λ¦¬μΉ˜λŠ” μ—¬λŸ¬ 이유둜 λ©€ν‹±μŠ€λ₯Ό 포기 벨 μ—°κ΅¬μ†Œμ—μ„œ κ³ μ•ˆν•œ 더 λ‹¨μˆœν•˜κ³  더 효율적인 운영체제 μœ λ‹‰μŠ€ βœ… λ©€ν‹°μŠ€μ™€ μœ λ‹‰μŠ€ 차이점과 μœ μ‚¬μ  λ©€ν‹±μŠ€μ™€ μœ λ‹‰μŠ€ λͺ¨λ‘ λ‚΄λΆ€ ꡬ쑰둜 β€˜μ–‘νŒŒμ²˜λŸΌ ...

🐣 chap10. λžŒλ‹€λ₯Ό μ΄μš©ν•œ 도메인 μ „μš© μ–Έμ–΄

chap10. λžŒλ‹€λ₯Ό μ΄μš©ν•œ 도메인 μ „μš© μ–Έμ–΄ 10.1 도메인 μ „μš© μ–Έμ–΄ DSL(domain specific languages)은 λ²”μš© ν”„λ‘œκ·Έλž˜λ° μ–Έμ–΄κ°€ μ•„λ‹ˆλΌ νŠΉμ • λΉ„μ¦ˆλ‹ˆμŠ€ λ„λ©”μΈμ˜ 문제λ₯Ό ν•΄κ²°ν•˜λ €κ³  λ§Œλ“  μ–Έμ–΄λ‹€. νŠΉμ • λ„λ©”μΈμ—λ§Œ κ΅­ν•œλ˜λ―€λ‘œ 였직 μžμ‹ μ˜ 문제λ₯Ό μ–΄λ–»κ²Œ ν•΄κ²°ν• μ§€μ—λ§Œ 집쀑할 수 있고 λ³΅μž‘μ„±μ„ 잘 λ‹€λ£° 수 μžˆλ‹€. DSL을 개발...

🐒 8. Thread & Lock

🫧 동기화와 락 μ–΄λ–€ ν”„λ‘œμ„ΈμŠ€ μ•ˆμ—μ„œ μƒμ„±λœ μŠ€λ ˆλ“œλ“€μ€ 같은 λ©”λͺ¨λ¦¬ 곡간을 κ³΅μœ ν•¨ μŠ€λ ˆλ“œκ°€ μ„œλ‘œ 데이터λ₯Ό κ³΅μœ ν•  수 있음 두 μŠ€λ ˆλ“œκ°€ 같은 μžμ›μ„ λ™μ‹œμ— λ³€κ²½ν•˜λŠ” κ²½μš°λŠ” λ¬Έμ œκ°€ λœλ‹€ synchronized 곡유 μžμ›μ— λŒ€ν•œ 접근을 μ œμ–΄ν•¨ 락 μ„Έλ°€ν•˜κ²Œ 동기화λ₯Ό μ œμ–΄ν•¨ ...

🐣 8. Thread & Lock

ꡐ착 μƒνƒœ(deadlock)에 λŒ€ν•œ 일반적인 이해도 평가 μžλ°”μ˜ μŠ€λ ˆλ“œ λͺ¨λ“  μŠ€λ ˆλ“œλŠ” java.lang.Thread 클래슀 객체에 μ˜ν•΄ 생성/μ œμ–΄ 독립적인 μ‘μš© ν”„λ‘œκ·Έλž¨μ΄ 싀행될 λ•Œ, main() λ©”μ„œλ“œλ₯Ό μ‹€ν–‰ν•˜κΈ° μœ„ν•œ ν•˜λ‚˜μ˜ μ‚¬μš©μž μŠ€λ ˆλ“œλ₯Ό μ£Ό μŠ€λ ˆλ“œ(main thread)라고 λΆ€λ₯Έλ‹€. μžλ°”μ—μ„œ μŠ€λ ˆλ“œλ₯Ό κ΅¬ν˜„ν•˜λŠ”...