Search

AI3 - 12일차 μ˜€ν›„

λΉ λ₯Έ μš”μ•½

νšŒμ˜μ—μ„œλŠ” λ‹€μ–‘ν•œ ν”„λ‘œκ·Έλž˜λ° κ°œλ…μ„ λ‹€λ£¨μ—ˆμœΌλ©°, 객체 μ •λ ¬ 및 비ꡐ 방법 탐색을 μœ„ν•œ Comparable μΈν„°νŽ˜μ΄μŠ€ κ΅¬ν˜„μ— 쀑점을 λ‘μ—ˆμŠ΅λ‹ˆλ‹€. μ°Έκ°€μžλ“€μ€ λ°°μ—΄, λͺ©λ‘ 및 읡λͺ… 개체λ₯Ό ν¬ν•¨ν•œ 데이터 ꡬ쑰λ₯Ό λ§Œλ“€κ³  μ‘°μž‘ν•˜λŠ” 것에 λŒ€ν•΄ ν† λ‘ ν–ˆμœΌλ©° νŠΉμ • μ½”λ”© μž‘μ—…κ³Ό 문제λ₯Ό ν•΄κ²°ν–ˆμŠ΅λ‹ˆλ‹€. μ„Έμ…˜μ€ λ‹€λ£¨λŠ” κ°œλ…κ³Ό μΆ”κ°€ μ‹€μŠ΅μ— λŒ€ν•œ μ œμ•ˆμ„ κ²€ν† ν•˜μ—¬ λ§ˆλ¬΄λ¦¬λ˜μ—ˆμŠ΅λ‹ˆλ‹€. λ‹€μŒ 단계 β€’ λͺ¨λ“  μ°Έμ„μžλŠ” Javaμ—μ„œ Comparable μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•˜λŠ” 방법을 κ²€ν† ν•˜κ³  μ—°μŠ΅ν•©λ‹ˆλ‹€. β€’ λͺ¨λ“  μ°Έμ„μžλŠ” κ°œλ… 검증을 μœ„ν•΄ ꡐ싀에 μ—…λ‘œλ“œλœ ν€΄μ¦ˆλ₯Ό μ™„λ£Œν•΄μ•Ό ν•©λ‹ˆλ‹€. β€’ λͺ¨λ“  μ°Έμ„μžλŠ” λ‹€μŒ μ‹œκ°„ μ„Έμ…˜μ„ μœ„ν•΄ μ²­μ†Œν•˜κ³  μ€€λΉ„ν•΄μ•Ό ν•©λ‹ˆλ‹€. μš”μ•½

객체 정렬을 μœ„ν•œ 비ꡐ κ°€λŠ₯ν•œ μΈν„°νŽ˜μ΄μŠ€

νšŒμ˜μ—μ„œ AlohaλŠ” Comparable μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ‚¬μš©ν•˜μ—¬ 객체λ₯Ό λΉ„κ΅ν•˜λŠ” κ°œλ…μ„ λ…Όμ˜ν–ˆμŠ΅λ‹ˆλ‹€. κ·ΈλŠ” μΈν„°νŽ˜μ΄μŠ€κ°€ νŠΉμ • 기쀀에 따라 객체λ₯Ό λΉ„κ΅ν•˜κ³  μ •λ ¬ ν•  수 μžˆλ‹€κ³  μ„€λͺ…ν–ˆμŠ΅λ‹ˆλ‹€. AlohaλŠ” Comparable μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•˜λŠ” 클래슀λ₯Ό λ§Œλ“€κ³  가격에 따라 객체 μ»¬λ ‰μ…˜μ„ μ •λ ¬ν•¨μœΌλ‘œμ¨ 이λ₯Ό μž…μ¦ν–ˆμŠ΅λ‹ˆλ‹€. κ·ΈλŠ” λ˜ν•œ 비ꡐ 기쀀을 μ„€μ •ν•˜κ³  μ»¬λ ‰μ…˜μ„ μƒμŠΉ μˆœμ„œλ‘œ μ •λ¦¬ν•˜λŠ” 것이 μ€‘μš”ν•˜λ‹€κ³  λ…Όμ˜ν–ˆμŠ΅λ‹ˆλ‹€.

정렬을 μœ„ν•œ 비ꡐ 방법 κ΅¬ν˜„

이 토둠은 ν”„λ‘œκ·Έλž˜λ° λ§₯λ½μ—μ„œ 객체λ₯Ό μ •λ ¬ν•˜κΈ°μœ„ν•œ 비ꡐ 방법을 κ΅¬ν˜„ν•˜κ³  κ°œμ„ ν•˜λŠ” 데 쀑점을 λ‘‘λ‹ˆλ‹€. 그듀은 쑰건문 및 μˆ˜ν•™ 연산을 μ‚¬μš©ν•˜λŠ” 것을 ν¬ν•¨ν•˜μ—¬ 가격을 λΉ„κ΅ν•˜λŠ” λ‹€μ–‘ν•œ μ ‘κ·Ό 방식을 νƒμƒ‰ν•©λ‹ˆλ‹€. νŒ€μ€ λ˜ν•œ ꡐ윑 λ˜λŠ” ν›ˆλ ¨ ν™˜κ²½μ—μ„œ μž‘μ—…μ„ μ œμΆœν•˜κ³  포인트λ₯Ό μ–»λŠ” μ „λž΅μ„ λ…Όμ˜ν•©λ‹ˆλ‹€. λ§ˆμ§€λ§‰μ— κ΄‘μ €μš°μ—μ„œμ˜ μ·¨μ—… μ œμ•ˆμ„ κ°„λž΅ν•˜κ²Œ μ–ΈκΈ‰ν•˜κ³  숫자 λŒ€μ‹  ν…μŠ€νŠΈ λ¬Έμžμ—΄μ„ λΉ„κ΅ν•˜κΈ°λ‘œ κ²°μ •ν–ˆμŠ΅λ‹ˆλ‹€.

μ˜ν™” λΆ„λ₯˜ 및 μ •λ ¬ 기술

이 κ·Έλ£Ήμ—μ„œλŠ” μ˜ν™” 클래슀λ₯Ό λ§Œλ“€κ³ , λ‹€μ–‘ν•œ 기쀀에 따라 μ˜ν™”λ₯Ό μ •λ ¬ν•˜κΈ° μœ„ν•΄ Comparable μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•˜λŠ” 방법에 λŒ€ν•΄ λ…Όμ˜ν•©λ‹ˆλ‹€. μ˜ν™” 제λͺ©, 가격 및 μ—¬λŸ¬ μš”μ†Œμ˜ 쑰합을 ν¬ν•¨ν•œ λ‹€μ–‘ν•œ μ •λ ¬ 방법을 νƒκ΅¬ν•©λ‹ˆλ‹€. 토둠은 객체 지ν–₯ ν”„λ‘œκ·Έλž˜λ° κ°œλ…μ— λŒ€ν•΄ 닀루며 제λͺ©, 감독 및 가격과 같은 속성을 가진 μ˜ν™” 개체λ₯Ό λ§Œλ“œλŠ” 예제λ₯Ό ν¬ν•¨ν•©λ‹ˆλ‹€. λŒ€ν™”λŠ” λ˜ν•œ 개인적인 μ˜ν™” μ„ ν˜Έλ„μ™€ μΆ”μ²œμ— λŒ€ν•΄ κ°„λž΅ν•˜κ²Œ μ΄μ•ΌκΈ°ν•©λ‹ˆλ‹€. 비ꡐλ₯Ό ν†΅ν•œ ν•˜μœ„ μˆœμ„œ μ •λ ¬ κ΅¬ν˜„ 토둠은 객체 정렬을 μœ„ν•œ 비ꡐ 방법을 κ΅¬ν˜„ν•˜λŠ” 데 쀑점을 λ‘‘λ‹ˆλ‹€. μ—°μ‚¬λŠ” λ‚˜μ΄μ— 따라 ν•˜μœ„ μˆœμ„œλ‘œ μ •λ ¬ν•˜κ³ , λ‚˜μ΄κ°€ κ°™μœΌλ©΄ μ΄λ¦„μœΌλ‘œ 2μ°¨ μ •λ ¬ν•˜λŠ” 방법을 μ„€λͺ…ν•©λ‹ˆλ‹€. 비ꡐ 둜직이 μ–΄λ–»κ²Œ μž‘λ™ν•˜λŠ”μ§€ μ˜ˆμ‹œλ₯Ό μ œκ³΅ν•˜λ©°, 긍정적 및 뢀정적인 λ°˜ν™˜ 값이 μ •λ ¬ μˆœμ„œμ— λ―ΈμΉ˜λŠ” 영ν–₯을 λ³΄μ—¬μ€λ‹ˆλ‹€. μ—°μ‚¬λŠ” λ˜ν•œ νŠΉμ • μ˜ˆμ‹œλ₯Ό 톡해 λ‹€μ–‘ν•œ λ‚˜μ΄μ™€ μ΄λ¦„μ˜ μ—¬λŸ¬ 개체λ₯Ό μ‚¬μš©ν•˜μ—¬ κ°œλ…μ„ μ„€λͺ…ν•˜κ³ , μ •λ ¬ 기쀀이 μ›ν•˜λŠ” μˆœμ„œλ₯Ό λ‹¬μ„±ν•˜λŠ” 방법을 λ³΄μ—¬μ€λ‹ˆλ‹€.

μ‚¬μš©μž 객체 μ½”λ”© 및 ν…ŒμŠ€νŠΈ

λ°œν‘œμžλŠ” μ‚¬μš©μž 객체와 λͺ©λ‘μ„ ν¬ν•¨ν•˜λŠ” μ½”λ”© μž‘μ—…μ„ 진행 μ€‘μž…λ‹ˆλ‹€. 그듀은 λ‚˜μ΄μ™€ 이름과 같은 속성을 ν¬ν•¨ν•œ 남성 κ°€μ •λΆ€λ₯Ό μœ„ν•œ 데이터 ν•­λͺ©μ„ λ§Œλ“€κ³  μ‘°μž‘ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. λ°œν‘œμžλŠ” λ‹€μ–‘ν•œ μž…λ ₯을 ν…ŒμŠ€νŠΈν•˜κ³  μ½”λ“œλ₯Ό μ‘°μ •ν•˜λ©°, λ•Œλ‘œλŠ” 결과에 λŒ€ν•œ λ§Œμ‘±μ΄λ‚˜ μ’Œμ ˆκ°μ„ ν‘œν˜„ν•©λ‹ˆλ‹€. ID둜 μ‚¬μš©μž 객체 μ •λ ¬ν•˜κΈ° 이 토둠은 μ‚¬μš©μž 객체에 λŒ€ν•œ μ •λ ¬ μ•Œκ³ λ¦¬μ¦˜ κ΅¬ν˜„μ— 쀑점을 λ‘‘λ‹ˆλ‹€. 그듀은 λ‚˜μ΄κ°€ 같을 λ•ŒλŠ” μ—°λ Ήλ³„λ‘œ ν•˜μœ„ μˆœμ„œλ‘œ, μ΄λ¦„μœΌλ‘œ μƒμŠΉ μˆœμ„œλ‘œ μ •λ ¬ν•˜λŠ” λ‹€μ–‘ν•œ μ ‘κ·Ό 방식을 νƒμƒ‰ν•©λ‹ˆλ‹€. νŒ€μ€ λ¬Έμžμ—΄μ— Compare λ©”μ„œλ“œλ₯Ό μ‚¬μš©ν•˜λŠ” 것을 κ³ λ €ν•˜κ³  μ΅œμ’… μ •λ ¬ κΈ°μ€€μœΌλ‘œ ID ν•„λ“œλ₯Ό μΆ”κ°€ν•  κ°€λŠ₯성을 λ…Όμ˜ν•©λ‹ˆλ‹€. 그듀은 회의 μ‹œμŠ€ν…œμ„ μ‚¬μš©ν•˜λ©΄ μ •λ ¬ 논리λ₯Ό μ§€λ‚˜μΉ˜κ²Œ λ³΅μž‘ν•˜κ²Œ λ§Œλ“€μ§€ μ•Šκ³ λ„ μΆ©λΆ„ν•  수 μžˆλ‹€κ³  κ²°λ‘  λ‚΄λ¦½λ‹ˆλ‹€.

Java ν”„λ‘œκ·Έλž˜λ° κ°œλ… 및 데이터 ꡬ쑰

κ°•μ‚¬λŠ” Java의 λ°°μ—΄, λͺ©λ‘ 및 읡λͺ… 객체에 μ΄ˆμ μ„ 맞좘 λ‹€μ–‘ν•œ ν”„λ‘œκ·Έλž˜λ° κ°œλ…μ„ μ„€λͺ…ν•©λ‹ˆλ‹€. μ •λ ¬ 및 μΈν„°νŽ˜μ΄μŠ€ κ΅¬ν˜„μ„ ν¬ν•¨ν•˜μ—¬ μ΄λŸ¬ν•œ 데이터 ꡬ쑰λ₯Ό λ§Œλ“€κ³  μ‘°μž‘ν•˜λŠ” 방법을 λ³΄μ—¬μ€λ‹ˆλ‹€. 이 μˆ˜μ—…μ€ λ˜ν•œ 읡λͺ… κ΅¬ν˜• κ°œμ²΄μ™€ λΉ„κ΅κΈ°μ˜ μ‚¬μš©μ„ λ‹€λ£Ήλ‹ˆλ‹€. λ§ˆμ§€λ§‰μ— κ°•μ‚¬λŠ” 학생듀이 μ—°μŠ΅ ν•  μ½”λ”© 문제λ₯Ό μ œμ‹œν•˜κ³  μˆ˜μ—…μ—μ„œ 닀룬 κ°œλ…μ„ κ²€ν† ν•˜λ„λ‘ μ œμ•ˆν•©λ‹ˆλ‹€. μ„Έμ…˜μ€ ν•™μƒλ“€μ—κ²Œ λ‹€μŒ μ‹œκ°„ λ™μ•ˆ μ²­μ†Œν•˜κ³  μ€€λΉ„ν•˜λ„λ‘ μƒκΈ°μ‹œμΌœμ„œ λλ‚©λ‹ˆλ‹€.