๐Ÿ•ธ Algorithm/๐Ÿ•ธ ์ž๋ฃŒ๊ตฌ์กฐ์™€ ์•Œ๊ณ ๋ฆฌ์ฆ˜

[Java/Alorithm]์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ž€?

๋‰ด์ด NUEY 2024. 8. 18. 03:46
๋ฐ˜์‘ํ˜•
์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ž€?

๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ
๋ช…ํ™•ํ•˜๊ฒŒ ์ •์˜๋œ ์ˆœ์„œ๋กœ ์ด๋ฃจ์–ด์ง„ ๊ทœ์น™์˜ ์ง‘ํ•ฉ.

 

๋ณ€์ˆ˜์˜ ๊ฐ’์— ๋”ฐ๋ผ ๊ฒฐ๊ณผ๊ฐ€ ํ‹€๋ฆฌ๊ธฐ๋„ ํ•œ๋‹ค๋ฉด ์˜ฌ๋ฐ”๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์•„๋‹™๋‹ˆ๋‹ค.


์„ธ ๊ฐ’์˜ ์ตœ๋Œ“๊ฐ’์„ ๊ตฌํ•˜๋Š” ์ฝ”๋“œ

๊ณผ์ •

  1. max์— a๊ฐ’์„ ๋„ฃ๋Š”๋‹ค.
  2. b ๊ฐ’์ด max๋ณด๋‹ค ํฌ๋ฉด max์— b๊ฐ’์„ ๋„ฃ๋Š”๋‹ค.
  3. c ๊ฐ’์ด max๋ณด๋‹ค ํฌ๋ฉด max์— c๊ฐ’์„ ๋„ฃ๋Š”๋‹ค.

์ด๋ ‡๊ฒŒ ์ˆœ์„œ๋Œ€๋กœ ๋ฌธ์žฅprocess์ด ์‹คํ–‰๋˜๋Š” ๊ตฌ์กฐ๋ฅผ

 

์ˆœ์ฐจ์  ๊ตฌ์กฐ
concatenation

๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

๋ฌธ์žฅ process → ๋ฌธ์žฅ process → ๋ฌธ์žฅ process

์—ฌ๊ธฐ์—์„œ max์— a๊ฐ’์„ ๋„ฃ๋Š” ๊ฒƒ์€ ๋‹จ์ˆœ ๋Œ€์ž…์ž…๋‹ˆ๋‹ค.

ํ•˜์ง€๋งŒ ์ œ์–ด๋ฌธ if()๋ฅผ ์‚ฌ์šฉํ–ˆ์„ ๊ฒฝ์šฐ, ์‹์˜ ๊ฒฐ๊ณผ์— ๋”ฐ๋ผ ํ๋ฆ„์ด ๋ฐ”๋€Œ๋Š” ๊ฒƒ์„

 

์„ ํƒ ๊ตฌ์กฐ
selection

๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

if (์‹) → ๊ฒฐ๊ณผ๋„์ถœ

 


์ด ๊ณผ์ •์„ ์ดํ•ดํ•˜๊ธฐ ์‰ฝ๊ฒŒ ์ˆœ์„œ๋„flowchart๋ฅผ ์ด์šฉํ•˜์—ฌ ๋‚˜ํƒ€๋‚ด๋ฉด ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

์ฑ…์„ ์ฐธ๊ณ ํ•ด ํž˜๊ฒน๊ฒŒ ๊ทธ๋ ค๋ณธ ์ˆœ์„œ๋„..


๊ฒฐ์ • ํŠธ๋ฆฌ
Decision tree

๊ฒฐ๊ณผ๊ฐ€ ๋‚˜์˜ฌ ์ˆ˜ ์žˆ๋Š” ์กฐํ•ฉ์„ ๋‚˜์—ดํ•œ ํ˜•ํƒœ๋ฅผ ๊ฒฐ์ •ํŠธ๋ฆฌ ๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.


3๊ฐœ ์ •์ˆซ๊ฐ’ ์ค‘ ์ค‘์•™๊ฐ’ ์ฐพ๊ธฐ

์ฑ…์— ๋‚˜์˜จ ์ฝ”๋“œ๋ฅผ ์ดํ•ดํ•ด๋ณด๊ณ ์ž ๊ทธ๋Œ€๋กœ ์ณ๋ดค๋‹ค. ์ด๋ฅผ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด ๊ฒฐ์ •ํŠธ๋ฆฌ๋ฅผ ๊ทธ๋ ค๋ณด์ž๋ฉด

  • ์ฒ˜์Œ if๋ฌธ a>= b๊ฐ€ ํ‹€๋ฆด ๊ฒฝ์šฐ b๋Š” a๋ณด๋‹ค ํฌ๋‹ค๋Š” ๊ฒฐ๋ก ์ด ๋‚˜์˜จ๋‹ค.
  • ์ด๋Ÿฌํ•œ ํฐ ๊ฒฐ๋ก ์„ ํ†ตํ•ด ์กฐ๊ฑด์„ ์„ธ๋ถ„ํ™”ํ•ด๊ฐ€๊ธฐ ์‰ฌ์›Œ์ง„๋‹ค.

๊ฐ™์€ ๊ฒฐ๊ณผ์ด์ง€๋งŒ
ํšจ์œจ์ด ๋” ๋–จ์–ด์ง€๋Š” ์ด์œ 

์–ธ๋œป ๋ณด๊ธฐ์—” ์ฝ”๋“œ๊ฐ€ ๊ฐ„๊ฒฐํ•ด ์ข‹์•„๋ณด์ด์ง€๋งŒ..

  • if ( ) ๋ฌธ์•ˆ์— ๋น„๊ต์‹์ด 4๊ฐœ๋‚˜ ๋“ค์–ด์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋”ฐ๋ผ์„œ else if๋ฌธ ์•ˆ์— ์žˆ๋Š” ((a > b ๋ถ€๋ถ„์ด ๋งž๋‹ค๋Š” ๊ฒƒ์„ ์ฐพ๊ธฐ ์œ„ํ•ด์„œ ์œ„์˜ 4๋ฒˆ์˜ ๋น„๊ต๋ฅผ ํ•ด์•ผ๋งŒ ํ•ฉ๋‹ˆ๋‹ค.
  • c๊ฐ€ ์ค‘์•™๊ฐ’์ด๋ผ๋Š” ๊ฒƒ์„ ์ฐพ๊ธฐ์œ„ํ•ด์„  8๋ฒˆ์˜ ๋น„๊ต์‹์ด ์ˆ˜ํ–‰๋˜์–ด์•ผ๋งŒ ํ•ฉ๋‹ˆ๋‹ค.

์—ฐ์Šต๋ฌธ์ œ ํ’€์–ด๋ณด๊ธฐ

 

 

๋ฐ˜์‘ํ˜•