๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
[D+18] ํด๋ž˜์Šค ๊ต์žฌ์ •๋ฆฌ ๊ตญ๋น„์ง€์› D+18 - ํด๋ž˜์Šค ๊ต์žฌ์ •๋ฆฌ - ๊ฐ์ฒด ๊ฐ์ฒด๋ž€? ์ž๋ฐ”๋Š” ๋Œ€ํ‘œ์ ์ธ ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ (OOP: Object Oriented Programming)์œผ๋กœ ํ˜„์‹ค์„ธ๊ณ„ ์žˆ๋Š” ๊ฒƒ์ค‘์— ํ”„๋กœ๊ทธ๋žจ์ œ์ž‘์‹œ ํ•„์š”ํ•œ ์†์„ฑ๋“ค์„ ๋ฝ‘์•„๋‚ด์–ด ์ปดํ“จํŒ…์‹œ์Šคํ…œ์œผ๋กœ ์žฌ๊ตฌ์„ฑํ•œ ๊ฒƒ์ด๋‹ค. ๊ฐ์ฒด๋Š” ํ•„๋“œ(field)์™€ ๋ฉ”์†Œ๋“œ(method)๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. ๊ฐ์ฒด์ง€ํ–ฅ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ํŠน์ง• 1๏ธโƒฃ ์ถ”์ƒํ™” - ์‚ฌ์šฉ์ž์˜ ์š”๊ตฌ์‚ฌํ•ญ, ์„ค๊ณ„์‚ฌํ•ญ์˜ ์š”๊ตฌ์‚ฌํ•ญ์— ์˜ํ•ด ๋ฌด์—‡์ด ์ค‘์š”ํ•œ ๊ฒƒ์ธ์ง€๋ฅผ ์ธ์ง€ํ•˜๊ณ  ๋ฝ‘์•„๋‚ด๋Š” ๊ฒƒ 2๏ธโƒฃ ์บก์Šํ™” - ์ถ”์ƒํ™”๋ฅผ ํ†ตํ•ด ์–ป์–ด๋‚ธ ์†์„ฑ๋“ค์„ ๋ฌถ๋Š”๊ฒƒ 3๏ธโƒฃ ๋‹คํ˜•์„ฑ - ๊ฐ™์€ ๋ชจ์–‘์˜ ํ•จ์ˆ˜๊ฐ€ ์ƒํ™ฉ์— ๋”ฐ๋ผ ๋‹ค๋ฅด๊ฒŒ ๋™์ž‘ํ•˜๋Š” ๊ฒƒ - ์˜ค๋ฒ„๋กœ๋”ฉ : ํ•จ์ˆ˜์˜ ์ด๋ฆ„์€ ๊ฐ™์œผ๋‚˜ ๋งค๊ฐœ๋ณ€์ˆ˜์˜ ๊ฐœ์ˆ˜๋‚˜, ํƒ€์ž…์„ ํ†ตํ•ด์„œ ๋‹ค๋ฅธ ํ•จ์ˆ˜๋กœ ์ •์˜ํ•˜๋Š” ๊ฒƒ - ๊ณผ๋„ํ•œ ์˜ค๋ฒ„๋กœ๋”ฉ์€ ๋ณต์žก๋„๋ฅผ ์˜ฌ๋ฆผ .. 2022. 10. 17.
[D+17] Queue ๊ตญ๋น„์ง€์› D+17 - Queue - Queue ๋Œ€๊ธฐ์—๋Š” ๋ฌด์ž‘์ • ๊ธฐ๋‹ค๋ฆฌ๋Š” ๋Œ€๊ธฐ์™€ ์ˆœ๋ฒˆ์ด ์žˆ๋Š” ๋Œ€๊ธฐ๊ฐ€ ์žˆ๋‹ค. ์ด๋ฒˆ์‹œ๊ฐ„์— ์šฐ๋ฆฌ๋Š” ์ˆœ๋ฒˆ์ด ์žˆ๋Š” ๋Œ€๊ธฐ์ธ Queue์— ๋Œ€ํ•ด์„œ ๋ฐฐ์›Œ๋ณผ ๊ฒƒ์ด๋‹ค. Queue๋Š” ์ฐจ๋ก€๊ฐ€ ์žˆ๋Š” ๋Œ€๊ธฐ๋ฅผ ์ฒ˜๋ฆฌํ•˜๊ธฐ ์œ„ํ•œ ์ž๋ฃŒ๊ตฌ์กฐ๋กœ ์‚ฌ์‹ค์ƒ ๋ฐ์ดํ„ฐ๊ฐ€ ๋“ค์–ด์˜ค๋Š” ์กฑ์กฑ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ํ๋Š” ํ•„์š”ํ•˜์ง€ ์•Š๋‹ค. ํ•˜์ง€๋งŒ ๋ฐ์ดํ„ฐ๊ฐ€ ๋“ค์–ด์˜ค๋Š” ์†๋„๊ฐ€ ๋‚˜๊ฐ€๋Š” ์†๋„๋ณด๋‹ค ๋น ๋ฅผ๊ฒฝ์šฐ์—” ์ค„์„ ์„ธ์›Œ์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ํ๊ฐ€ ํ•„์š”ํ•œ ๊ฒƒ์ด๋‹ค. - ๋จผ์ € ๋“ค์–ด๊ฐ„ ๊ฒƒ์ด ๋จผ์ €๋‚˜์˜ค๋Š” ๊ตฌ์กฐ๋กœ FIFO(First In First Out)์ด๋‹ค. - ๋ฐ์ดํ„ฐ๋ฅผ ๋„ฃ์–ด์•ผํ•˜๋Š” ์œ„์น˜๋ฅผ rear๋ผ๊ณ ํ•˜๋ฉฐ, ๋ฐ์ดํ„ฐ๋ฅผ ๋„์ง‘์–ด๋‚ด์•ผํ•˜๋Š” ์œ„์น˜๋ฅผ front๋ผ๊ณ  ํ•œ๋‹ค. - rear์™€ front๋Š” ํ•œ๋ฑกํ–ฅ์œผ๋กœ ๋Œ์•„๊ฐ„๋‹ค. - Enqueue : ํ์˜ rear์œ„์น˜์— ๋ฐ์ดํ„ฐ๋ฅผ ์ถ”๊ฐ€ํ•œ๋‹ค. -.. 2022. 10. 17.
[D+17] ์ฝ”๋”ฉ๋ฐ์ด ๊ตญ๋น„์ง€์› D+17 - ์ฝ”๋”ฉ๋ฐ์ด - ์ฝ”๋”ฉ๋ฐ์ด Q) ํ•œ๋ฐ˜์˜ ์„ฑ์ ํ‘œ๋ฅผ ์ž…๋ ฅ๋ฐ›์•„ ์˜ค๋ฆ„์ฐจ์ˆœํ•˜์—ฌ ๋“ฑ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค์–ด๋ณด์‹œ์˜ค. • Main public class Test1 { public static void main(String[] args) { ScoreSort1 score = new ScoreSort1(); int[] arr = new int[] {56, 44, 87, 90, 68, 98, 77, 90, 97, 98}; score.setScoreArr(arr); score.bubbleSort(); score.printArr(); } } • ScoreSort Class public class ScoreSort1 { // ๋ณ€์ˆ˜ ์„ ์–ธ private int[] scoreArr;// ์„ฑ์ ๋ฐฐ์—ด ///////.. 2022. 10. 14.
[D+16] ๊ตฌ์กฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ, ๊ฐ์ฒด์ง€ํ–ฅ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ตญ๋น„์ง€์› D+16 - ๊ตฌ์กฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ, ๊ฐ์ฒด์ง€ํ–ฅ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ตฌ์กฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ”„๋กœ๊ทธ๋žจ์€ ์ž๋ฃŒ์™€ ๋ช…๋ น์–ด๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋Š”๋ฐ ํ”„๋กœ๊ทธ๋žจ์„ ์ž˜ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด์„œ๋Š” ๊ตฌ์„ฑ์š”์†Œ์ธ ์ž๋ฃŒ์™€ ๋ช…๋ น์–ด๋ฅผ ์ž˜ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค. ๊ทธ๋ž˜์„œ ์ƒ๊ฐํ•ด ๋‚ธ ๋ฐฉ๋ฒ•์ด ์ž๋ฃŒ์™€ ๋ช…๋ น์–ด๋ฅผ ๊ตฌ์กฐํ™”์‹œํ‚จ๊ฒƒ์ธ๋ฐ ์ด๋ฅผ ์šฐ๋ฆฌ๋Š” ๊ตฌ์กฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ์ด๋ผ๊ณ  ํ•œ๋‹ค. • ๊ตฌ์กฐ์  ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์„ค๊ณ„ ๊ตฌ์กฐ 1) ์ˆœ์ฐจ๊ตฌ์กฐ - ํ”„๋กœ๊ทธ๋žจ ์ฝ”๋“œ๊ฐ€ ์œ„์—์„œ ์•„๋ž˜๋กœ ์ผ์ง์„ ์œผ๋กœ ์‹คํ–‰๋˜๋Š” ๊ตฌ์กฐ๋กœ ์‹คํ–‰์„ ์œ„ํ•˜์—ฌ ์ž‘์€ ๋‹จ์œ„๋กœ ๋‚˜๋ˆˆ ํ›„ ์ˆœ์„œ๋Œ€๋กœ ์ง„ํ–‰๋˜๋Š” ๊ตฌ์กฐ์ด๋‹ค. 2) ์„ ํƒ๊ตฌ์กฐ - ์ฃผ์–ด์ง„ ์กฐ๊ฑด ๋งŒ์กฑ ์—ฌ๋ถ€์— ๋”ฐ๋ผ ์ฒ˜๋ฆฌ ๋Œ€์ƒ๊ณผ ์ˆœ์„œ๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๊ตฌ์กฐ๋กœ ์กฐ๊ฑด๋ฌธ์ธ if์™€ if-else๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค. 3) ๋ฐ˜๋ณต๊ตฌ์กฐ - ์กฐ๊ฑด์ด ๋งŒ์กฑํ•  ๋•Œ๊นŒ์ง€ ๋™์ž‘์„ ๋ฐ˜๋ณตํ•˜๋Š” ๊ตฌ์กฐ๋กœ ๋ฐ˜๋ณต๋ฌธ while, for๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. •.. 2022. 10. 13.
[D+15] ๋ฉ”๋ชจ๋ฆฌ๋งต ๋ณต์Šต, ํด๋ž˜์Šค(์ƒ์„ฑ์ž, static) ๊ตญ๋น„์ง€์› D+15 - ๋ฉ”๋ชจ๋ฆฌ๋งต ๋ณต์Šต, ํด๋ž˜์Šค(์ƒ์„ฑ์ž, static) - ๋ฉ”๋ชจ๋ฆฌ๋งต ์ด๋ฒˆ์‹œ๊ฐ„์—๋Š” ์งœ์—ฌ์ง„ ์ฝ”๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋ฉ”๋ชจ๋ฆฌ๋งต์„ ํ‘œํ˜„ํ•ด ๋ณด๋Š” ์‹œ๊ฐ„์„ ๊ฐ€์ ธ๋ณด์•˜๋‹ค. ์„ค๋ช…ํ•ด๋ณด์ž๋ฉด, ๋จผ์ € ์Šคํƒ์˜์—ญ์— ๋ฉ”์ธํ•จ์ˆ˜์— ๋Œ€ํ•œ ์Šคํƒํ”„๋ ˆ์ž„์ด ์ƒ๊ธฐ๊ณ  ํž™ ์˜์—ญ์— ๋ฐฐ์—ด์„ ๋„ฃ์–ด์ค€ ๋‹ค์Œ์— ar์— ๋ฐฐ์—ด์— ๋Œ€ํ•œ ์ฐธ์กฐ๊ฐ’์„ ๋„ฃ์–ด์ค€๋‹ค. ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ MyClass๋ผ๋Š” ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด์„œ MyClass๊ฐ์ฒด๋ฅผ ํž™์˜์—ญ์— ์ƒ์„ฑํ•ด์ฃผ๊ณ  ์ด์—๋Œ€ํ•œ ์ฐธ์กฐ๊ฐ’์„ mc์— ๋„ฃ์–ด์ฃผ๋ฉด ๋ฉ”์ธํ•จ์ˆ˜์— ๋Œ€ํ•œ ์Šคํƒํ”„๋ ˆ์ž„์˜์—ญ์€ ๋์ด๋‚œ๋‹ค. ์ดํ›„์— mc์˜ printArray์— ์ ‘๊ทผํ•˜๊ฒŒ ๋˜๋ฉด printArray๋Š” Instruction-SET์ด๊ธฐ ๋•Œ๋ฌธ์— printArray๋Š” ๊ธ€๋กœ๋ฒŒ์˜์—ญ์— ๋“ค์–ด๊ฐ€ ์žˆ์œผ๋ฉฐ, printArray๊ฐ€ ์‹คํ–‰๋  ๋•Œ ์Šคํƒ์˜์—ญ์— printArray์— ๋Œ€ํ•œ ์Šคํƒํ”„๋ ˆ์ž„์ด ์ƒ๊ธฐ.. 2022. 10. 12.
[D+14] ํด๋ž˜์Šค, ์ถ”์ƒํ™”, ์ฐธ์กฐํƒ€์ž… ์ž„์‹œ๋ณ€์ˆ˜ ๊ตญ๋น„์ง€์› D+14 - ํด๋ž˜์Šค, ์ถ”์ƒํ™”, ์ฐธ์กฐํƒ€์ž… ์ž„์‹œ๋ณ€์ˆ˜ - ํด๋ž˜์Šค - ํด๋ž˜์Šค๋Š” ๋ฐ์ดํ„ฐ์™€ ๋ฉ”์†Œ๋“œ๊ฐ€ ๊ฒฐํ•ฉ๋œ ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด๋‹ค. - ๋งŒ์•ฝ ๋ฐ์ดํ„ฐ์™€ ๋ฉ”์†Œ๋“œ๊ฐ€ ๋ถ„๋ฆฌ๋˜์–ด ์žˆ์„๊ฒฝ์šฐ ๋ฉ”์†Œ๋“œ๋Š” ๋ฉ”์†Œ๋“œ๋ผ๋ฆฌ ๋ฐ์ดํ„ฐ๋Š” ๋ฐ์ดํ„ฐ๋ผ๋ฆฌ ๊ฐ์ž์—๋งŒ ์‹ ๊ฒฝ์„ ์จ์„œ ์ง‘์ค‘๋„๊ฐ€ ์˜ฌ๋ผ๊ฐ„๋‹ค๋Š” ์žฅ์ ์ด ์žˆ์„ ์ˆ˜ ์žˆ๊ฒ ์ง€๋งŒ ์†Œ์Šค์ฝ”๋“œ์˜ ์–‘์ด ๋Š˜์–ด๊ฐ€๊ณ , ๊ธฐ๋Šฅ์ด ๋Š˜๊ณ , ๋ณต์žกํ•ด์ง€๊ธฐ ๋•Œ๋ฌธ์— ์ „์ฒด์ ์ธ ๊ตฌ์กฐ๊ฐ€ ๋ˆˆ์— ์ž˜ ๋„์ง€ ์•Š๋Š”๋‹ค๋Š” ํฐ ๋‹จ์ ์ด ์žˆ๋‹ค. => ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ๋งค์šฐ ์œ ์šฉํ•œ ์ผ์ด๋‹ค. ์ถ”์ƒํ™” (Abstraction) ๋‚ด๊ฐ€ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ํ•™์‚ฌ ๊ด€๋ฆฌ ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค๋ผ๋Š” ์ฃผ๋ฌธ์„ ๋ฐ›์•˜๋Š”๋ฐ ๊ทธ์ค‘์—์„œ ํ•™์ƒ์ •๋ณด๋ฅผ ๋งŒ๋“ค๋ ค๊ณ  ํ•œ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ๋‚˜๋Š” ์•„๋งˆ๋„ ํ•™๋ฒˆ, ์ด๋ฆ„, ์ฃผ์†Œ ๋“ฑ์ด ํ•„์š”ํ•  ๊ฒƒ์ด๋‹ค. ๋‚˜๋Š” ์ด๋Ÿฌํ•œ ์ •๋ณด๋ฅผ ์–ด๋””์„œ๋ถ€ํ„ฐ ๊ฐ€์ ธ์˜จ ๊ฒƒ์ผ๊นŒ? ๋งŒ์•ฝ ์‹ค์ œ๋กœ ์กด.. 2022. 10. 11.