๊ด€๋ฆฌ ๋ฉ”๋‰ด

๋ชฉ๋ก2021/11 (13)

DATA101

[Java] ํ(Queue) ์ž๋ฃŒ๊ตฌ์กฐ ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€/์‚ญ์ œ ๋ฐฉ๋ฒ•!(+์ฝ”๋“œ)

์•ˆ๋…•ํ•˜์„ธ์š”, ์˜ค๋Š˜์€ Java์—์„œ ํ(Queue) ์ž๋ฃŒ๊ตฌ์กฐ์˜ ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€๋ฐ ์‚ญ์ œํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ’ก ํ•™์Šต๋ชฉํ‘œ Java ์–ธ์–ด์—์„œ Queue ์ž๋ฃŒ๊ตฌ์กฐ์˜ ๋ฐ์ดํ„ฐ ์‚ฝ์ž…/์‚ญ์ œํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ดํ•ดํ•œ๋‹ค. 1. ํ ์ž๋ฃŒ๊ตฌ์กฐ๋ž€? ํ ์ž๋ฃŒ๊ตฌ์กฐ๋Š” ์„ ์ž…์„ ์ถœ(ๅ…ˆๅ…ฅๅ…ˆๅ‡บ, First In First Out, ์ค„์—ฌ์„œ FIFO) ๊ตฌ์กฐ๋กœ, ํ”ํžˆ ๋†€์ด๊ณต์› ๋‚ด ๋†€์ด๊ธฐ๊ตฌ ๋Œ€๊ธฐ์ค„์— ๋น„์œ ํ•ฉ๋‹ˆ๋‹ค(๊ทธ๋ฆผ 1 ์ฐธ๊ณ ). ์ฆ‰, ๋†€์ด๊ธฐ๊ตฌ ๋Œ€๊ธฐ์ค„์— ๋จผ์ € ์„  ์‚ฌ๋žŒ(๋ฐ์ดํ„ฐ ์ž…๋ ฅ)์ด ๋จผ์ € ๋†€์ด๊ธฐ๊ตฌ๋ฅผ ํƒ€๋Š”(๋ฐ์ดํ„ฐ ์ถœ๋ ฅ/์ œ๊ฑฐ) ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค(๋‹จ, ์ƒˆ์น˜๊ธฐ๋Š” ์—†๋‹ค๊ณ  ๊ฐ€์ •). 2. ํ ๊ฐ์ฒด ์ƒ์„ฑ public class Hello { public static void main(String[] args) { Queue q = new LinkedList(); } } ์ •์ˆ˜ํ˜• ..

SW ๊ฐœ๋ฐœ/Java 2021. 11. 16. 08:26
[Java] Switch~case ๋ฌธ์„ ํ™œ์šฉํ•œ ์ •ํ˜•ํ™”๋œ ์ œ์–ด๋ฌธ ์ž‘์„ฑํ•˜๊ธฐ!

์•ˆ๋…•ํ•˜์„ธ์š”, ์˜ค๋Š˜์€ Java์—์„œ if~else ๋ณด๋‹ค ์ •ํ˜•ํ™”๋œ ์กฐ๊ฑดํ˜• ์ œ์–ด๋ฌธ Switch~case ๊ตฌ๋ฌธ์— ๋Œ€ํ•ด ์•Œ์•„๋ด…๋‹ˆ๋‹ค. ๐Ÿ’ก ํ•™์Šต ๋ชฉํ‘œ Java์—์„œ Switch~case ๊ตฌ๋ฌธ ํ™œ์šฉ๋ฐฉ๋ฒ•๊ณผ ์‚ฌ์šฉ ๋ชฉ์ ์— ๋Œ€ํ•ด ์ดํ•ดํ•œ๋‹ค. 1. Switch~case ๊ตฌ๋ฌธ์ด๋ž€? Switch~Case ๊ตฌ๋ฌธ if~else ๊ตฌ๋ฌธ์ฒ˜๋Ÿผ ์กฐ๊ฑด์‹ ์ค‘ ํ•˜๋‚˜๋กœ, ํ•˜๋‚˜์˜ ์กฐ๊ฑด์‹ ๊ฒฐ๊ด๊ฐ’์— ๋”ฐ๋ผ ๊ฐ๊ฐ ๋‹ค๋ฅธ ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋„๋ก ํ”„๋กœ๊ทธ๋žจ์„ ์„ค๊ณ„ํ•  ๋•Œ ์ฃผ๋กœ ํ™œ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฝ์šฐ์—์„œ๋Š” if~else ๊ตฌ๋ฌธ์„ ๊ทธ๋Œ€๋กœ ํ™œ์šฉํ•˜๋ฉด ์ฝ”๋“œ ์ž์ฒด๊ฐ€ ๊ฐ„๊ฒฐํ•˜์ง€ ์•Š์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ์œ„์—์„œ๋ถ€ํ„ฐ ์กฐ๊ฑด์‹์„ ์ผ์ผ์ด ๊ฒ€์ฆํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ”„๋กœ๊ทธ๋žจ์˜ ๋น„์šฉ์ด ๋†’์•„์ง‘๋‹ˆ๋‹ค. 2. Switch~case ๊ตฌ๋ฌธ ํ™œ์šฉ ์˜ˆ์‹œ ์˜ˆ๋ฅผ ๋“ค์–ด, ์•„๋ž˜ ํ‘œ์™€ ๊ฐ™์ด ์‹œํ—˜ ์ ์ˆ˜์— ๋”ฐ๋ผ ๋“ฑ๊ธ‰์„ A, B, C, D, ..

SW ๊ฐœ๋ฐœ/Java 2021. 11. 15. 00:03
[Java] ์ž„์˜์˜ ์ •์ˆ˜ ๋ฐ์ดํ„ฐ ์ƒ์„ฑํ•˜๊ธฐ! (Random ๋ชจ๋“ˆ ํ™œ์šฉ)

์˜ค๋Š˜์€ Java์—์„œ Random ๋ชจ๋“ˆ์„ ํ™œ์šฉํ•ด ์ž„์˜์˜ ์ •์ˆ˜๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ ๋ฐ”๋กœ ์‹œ์ž‘ํ•˜์ฃ ! ๐Ÿ’ก ํ•™์Šต ๋ชฉํ‘œ Random ๋ชจ๋“ˆ์„ ํ™œ์šฉํ•ด ์ž„์˜์˜ ์ •์ˆ˜๋ฅผ ์ถ”์ถœํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด ์ดํ•ดํ•œ๋‹ค. ๊ธฐ๋ณธ ์‹ค์Šต์ฝ”๋“œ Random ๋ชจ๋“ˆ import import java.util.Random; Random ๋ชจ๋“ˆ์„ import ํ•ด์ค๋‹ˆ๋‹ค. Random ๊ฐ์ฒด ์ƒ์„ฑ ๋ฐ ๋ชจ๋“ˆ import ๋‹จ์ถ•ํ‚ค public class Hello{ public static void main(String [] args){ Random rn = new Random(); } } ์ด์ œ Random ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•ด ์ค๋‹ˆ๋‹ค. ์•ž์„œ Random ๋ชจ๋“ˆ์„ import ํ•  ๋•Œ ์ผ์ผ์ด ์ฝ”๋“œ๋ฅผ ์ž…๋ ฅํ•˜๋Š” ๋ฐฉ๋ฒ•๋„ ์žˆ์ง€๋งŒ, ๊ฐ„ํŽธํ•œ ์ž๋™์™„์„ฑ ๋‹จ์ถ•ํ‚ค๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ ..

SW ๊ฐœ๋ฐœ/Java 2021. 11. 14. 21:52
[Java] ํด๋ฆฐ์ฝ”๋“œ๋ฅผ ์œ„ํ•œ for ๋ฐ˜๋ณต๋ฌธ ์ž‘์„ฑ ๊ทœ์น™+์ดํด๋ฆฝ์Šค ๋‹จ์ถ•ํ‚ค ๊ณต์œ !

์•ˆ๋…•ํ•˜์„ธ์š”, ์˜ค๋Š˜์€ Java์—์„œ ํด๋ฆฐ ์ฝ”๋“œ(clean code)๋ฅผ ์œ„ํ•œ for ๋ฐ˜๋ณต๋ฌธ ์ž‘์„ฑ ๊ฟ€ํŒ์„ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋Ÿผ ๋ฐ”๋กœ ์‹œ์ž‘ํ•˜์ฃ ! ๐Ÿ’ก ํ•™์Šต๋ชฉํ‘œ Java ํด๋ฆฐ ์ฝ”๋“œ๋ฅผ ์œ„ํ•œ for ๋ฐ˜๋ณต๋ฌธ ์ž‘์„ฑ ๊ทœ์น™์„ ํ•™์Šตํ•œ๋‹ค. ๋“ค์–ด๊ฐ€๋ฉฐ ํด๋ฆฐ์ฝ”๋“œ๋ฅผ ์œ„ํ•œ ๋ฐ˜๋ณต๋ฌธ ์ž‘์„ฑ ์‹œ ๊ฐ€์žฅ ์œ ๋…ํ•ด์•ผ ํ•  ์‚ฌํ•ญ์€ ์ง๊ด€์ ์œผ๋กœ ๋ฐ˜๋ณต ํšŸ์ˆ˜๋ฅผ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ž‘์„ฑํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์กฐ๊ฑด์‹, ๋ณ€ํ™”์‹ ์ž‘์„ฑ๊ณผ ์ดํด๋ฆฝ์Šค ๋‹จ์ถ•ํ‚ค๋ฅผ ์ฐจ๋ก€๋กœ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค. 1. ์กฐ๊ฑด์‹ ์ž‘์„ฑ Tip for ๋ฐ˜๋ณต๋ฌธ ์ž‘์„ฑ ์‹œ ์ดˆ๊ธฐ ์กฐ๊ฑด์˜ ๋ณ€์ˆซ๊ฐ’์ด 0์ด๋ƒ, 1์ด๋ƒ์— ๋”ฐ๋ผ ์กฐ๊ฑด์‹(i.e., ๋ถ€๋“ฑํ˜ธ ๊ธฐํ˜ธ) ์ž‘์„ฑ ๊ทœ์น™์ด ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ๊ฐ๊ฐ ์‚ดํŽด๋ณด์ฃ . 1) ์ดˆ๊ธฐ์กฐ๊ฑด ๋ณ€์ˆซ๊ฐ’์ด 0์ธ ๊ฒฝ์šฐ public class Hello { public static void main(String[] args) { fo..

SW ๊ฐœ๋ฐœ/Java 2021. 11. 14. 21:06