๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ“ ์•Œ๊ณ ๋ฆฌ์ฆ˜/Code Tree

[์ฝ”๋“œํŠธ๋ฆฌ] ์‹œ๊ฐ„๋ณต์žก๋„์˜ ์ •์˜

SW์ค‘์‹ฌ๋Œ€ํ•™ ์‚ฌ์—…๋‹จ์—์„œ CodeTree์™€ ํ•จ๊ป˜ ์‹ค์‹œํ•œ ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๋Œ€๋น„ ์บ ํ”„์— ์ฐธ์—ฌํ•˜์—ฌ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์„ ์ •๋ฆฌํ•˜์˜€์Šต๋‹ˆ๋‹ค.

 

 

ํ”„๋กœ๊ทธ๋žจ์˜ ํšจ์œจ์„ฑ์„ ํ™•์ธํ•˜๋ ค๋ฉด? ๋จผ์ € ์—ฐ์‚ฐ์ด ๋ช‡ ๋ฒˆ ์ง„ํ–‰๋˜์—ˆ๋Š”์ง€ ๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์—ฐ์‚ฐ ํšŸ์ˆ˜๋ฅผ ์„ธ๋Š” ๊ฒƒ์€ ๋งŽ์€ ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๊ณ , ์ฝ”๋“œ๊ฐ€ ๋ณต์žกํ•ด์ง„๋‹ค๋ฉด ๋งค์šฐ ์–ด๋ ค์›Œ์ง‘๋‹ˆ๋‹ค.

 

๊ทธ๋ž˜์„œ ์—ฐ์‚ฐ์˜ ํšŸ์ˆ˜๋ฅผ ์ ๊ทผ์  ํ‘œ๊ธฐ๋ฒ•์„ ํ†ตํ•ด ์ถ”์ƒ์ ์œผ๋กœ ํ‘œํ˜„ํ•œ ๊ฒƒ์ด ๋ฐ”๋กœ ์‹œ๊ฐ„๋ณต์žก๋„ ์ž…๋‹ˆ๋‹ค.

 

set a = 5
if a != 10
  print('hello')

 

print ๊ฐ™์€ ๋ฉ”์„œ๋“œ๋ฅผ O(1)์ด๋ผ๊ณ  ๊ฐ€์ •ํ•œ๋‹ค๋ฉด, ๋Œ€์ž…๋„ O(1)์ด๊ณ  print๋„ O(1)์ด๋‹ˆ if a != 10 ๋งŒ ์ •ํ™•ํ•˜๊ฒŒ ์•Œ๋ฉด ๋  ๊ฒƒ ์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ๊ฒฐ๊ตญ ๋‹จ์ˆœํžˆ ๋‘ ๊ฐ’์„ ๋น„๊ตํ•˜๋Š” ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๊ฒฐ๊ณผ์ ์œผ๋กœ ์กฐ๊ฑด๋ฌธ๋„ O(1)์˜ ์‹œ๊ฐ„๋ณต์žก๋„๋ฅผ ๋ณด์—ฌ์ฃผ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ์œ„ ์ฝ”๋“œ์˜ ์‹œ๊ฐ„๋ณต์žก๋„๋Š” O(1)์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ์ž…๋‹ˆ๋‹ค.

 

๋ณดํ†ต for loop์„ 1์–ต๋ฒˆ ๋„๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„์ด 1์ดˆ ์ •๋„ ๋ฉ๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ์ด๋ฅผ ์ด์šฉํ•œ๋‹ค๋ฉด ์ œํ•œ์‹œ๊ฐ„์ด 1์ดˆ์ธ ๊ฒฝ์šฐ,

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

 

์„ธ ๊ตฌ๋ถ„ ๊ธฐํ˜ธ์— ๋Œ€ํ•ด ๋ฐฐ์› ๋Š”๋ฐ, ์‹ค์ œ๋กœ ์šฐ๋ฆฌ๋Š” O๋งŒ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์™œ ๊ทธ๋Ÿด๊นŒ์š”?

 

์ ๊ทผ ํ‘œ๊ธฐ๋ฒ•์—๋Š” O, Ω, θ ์ด๋ผ๋Š” ์„ธ๊ฐ€์ง€ ํ‘œ๊ธฐ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ ์‹œ๊ฐ„๋ณต์žก๋„ ์ธก์ • ๊ณผ์ •์—์„œ θ ์„ ์‚ฌ์šฉํ•œ๋‹ค๋ฉด ๋งค์šฐ ์ •ํ™•ํ•˜๊ฒ ์ง€๋งŒ, ํ˜„์‹ค์ ์œผ๋กœ ํŠน์ • ์ฝ”๋“œ์˜ ์‹œ๊ฐ„๋ณต์žก๋„๋ฅผ ์™„๋ฒฝํ•˜๊ฒŒ ์•Œ๊ธฐ ํž˜๋“  ๊ฒฝ์šฐ๋„ ์žˆ์œผ๋ฏ€๋กœ, ์‚ฌ์šฉ์„ ํ”ผํ•˜๋Š” ํŽธ์ž…๋‹ˆ๋‹ค. ๋˜ํ•œ, Ω ์„ ์‚ฌ์šฉํ•˜๊ฒŒ ๋œ๋‹ค๋ฉด ์˜ค๋ž˜ ๊ฑธ๋ฆฌ๋Š” ์ฝ”๋“œ์˜ ์‹œ๊ฐ„๋ณต์žก๋„๋ฅผ ๋„ˆ๋ฌด ๋‚ฎ๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ์œ„ํ—˜์ด ์žˆ์œผ๋ฏ€๋กœ, ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

 

์ถœ์ฒ˜ ์ฝ”๋“œํŠธ๋ฆฌ