๐ŸŒˆ ์ž๋ฃŒ๊ตฌ์กฐ:: ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ (๊ตฌ๊ฐ„ ํŠธ๋ฆฌ, Segment Tree)

Aprilยท2021๋…„ 11์›” 16์ผ
0
post-thumbnail

๐Ÿš€ What I Will Learn

  • ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ(Segment Tree)์— ๋Œ€ํ•ด ์ดํ•ดํ•˜๊ธฐ
  • ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๊ตฌ๊ฐ„ ํ•ฉ์„ ๊ตฌํ•˜๋Š” ๋ฐฉ๋ฒ• ํ•™์Šตํ•˜๊ธฐ

๊ตฌ๊ฐ„ํŠธ๋ฆฌ(Segment Tree)๋ž€? ๊ตฌ๊ฐ„ํŠธ๋ฆฌ๋Š” ํŠน์ • ๊ตฌ๊ฐ„์—์„œ ํŠน์ •ํ•œ ๊ฐ’์„ ๋ฝ‘์•„์˜ฌ ๋•Œ ์œ ์šฉํ•˜๊ฒŒ ์‚ฌ์šฉ. ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ๋ผ๊ณ ๋„ ํ•œ๋‹ค.



์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ (๊ตฌ๊ฐ„ ํŠธ๋ฆฌ, Segment Tree)


1๏ธโƒฃ ๊ตฌ๊ฐ„ ํ•ฉ์ด๋ž€?

  • ๊ตฌ๊ฐ„ ํ•ฉ์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฐ์ดํ„ฐ๊ฐ€ ์—ฐ์†์ ์œผ๋กœ ์กด์žฌํ•  ๋•Œ
  • ํŠน์ •ํ•œ ๋ฒ”์œ„์˜ ๋ฐ์ดํ„ฐ์˜ ํ•ฉ์„ ๊ตฌํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธ

โœ”๏ธ ์„ ํ˜•์ ์œผ๋กœ ๊ตฌ๊ฐ„ ํ•ฉ ๊ตฌํ•˜๊ธฐ

  • ํ•˜๋‚˜์”ฉ ๊ฒ€์‚ฌ๋ฅผ ํ•˜๊ฒ ๋‹ค?!

1) ๋ฐฐ์—ด ์ดˆ๊ธฐํ™”

2) ๊ตฌ๊ฐ„ ํ•ฉ ๊ตฌํ•˜๊ธฐ

  • ์˜ˆ์‹œ) ์ธ๋ฑ์Šค 2๋ถ€ํ„ฐ 10๊นŒ์ง€ ์ ‘๊ทผํ•ด์„œ ํ•˜๋‚˜์”ฉ ๋”ํ•œ๋‹ค
    • ํ•ฉ๊ณ„: 45

์„ ํ˜•์ ์œผ๋กœ ๊ตฌ๊ฐ„ ํ•ฉ์„ ๊ตฌํ•˜๋Š” ๊ณผ์ •์€ ๐‘‚(๐‘)์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ฐ€์ง„๋‹ค




2๏ธโƒฃ ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ

โœ”๏ธ ํŠธ๋ฆฌ ๊ตฌ์กฐ๋กœ ๊ตฌ๊ฐ„ ํ•ฉ ๊ตฌํ•˜๊ธฐ

  • ์„ ํ˜•์ ์œผ๋กœ ๊ตฌ๊ฐ„ ํ•ฉ์„ ๊ตฌํ•˜๋Š” ๊ฒƒ์€ ๋น„ํšจ์œจ์ ์ด๋‹ค
  • ํŠธ๋ฆฌ ๊ตฌ์กฐ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๊ตฌ๊ฐ„ ํ•ฉ์„ ๊ตฌํ•˜๋Š” ๊ณผ์ •์€ ๐‘‚(๐‘™๐‘œ๐‘”๐‘)์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ฐ€์ง„๋‹ค

1) ์™„์ „ ์ด์ง„ ํŠธ๋ฆฌ์— ๋ฐ์ดํ„ฐ ์‚ฝ์ž…

2) ๊ตฌ๊ฐ„ ํ•ฉ ํŠธ๋ฆฌ ์ƒ์„ฑ

  • ํŠน์ • ๋ฒ”์œ„ ์ธ๋ฑ์Šค์˜ ๊ฐ’์„ ์ €์žฅ
    • ์ฒซ ๋ฒˆ์งธ ๋ฃจํŠธ๋Š” ์ธ๋ฑ์Šค 1๋ถ€ํ„ฐ ์‹œ์ž‘. ๋ฃจํŠธ๋Š” ์ „์ฒด ๋ฐ์ดํ„ฐ์ธ 0~6๊นŒ์ง€ ์ธ๋ฑ์Šค์˜ ๋ชจ๋“  ๋ฐ์ดํ„ฐ์˜ ํ•ฉ
    • ๋ฃจํŠธ์˜ ์™ผ์ชฝ ์ž์‹์€ ์ธ๋ฑ์Šค 0~3๊นŒ์ง€์˜ ๋ฐ์ดํ„ฐ ํ•ฉ
    • ๋ฃจํŠธ์˜ ์˜ค๋ฅธ์ชฝ ์ž์‹์€ ์ธ๋ฑ์Šค 4~6๊นŒ์ง€์˜ ๋ฐ์ดํ„ฐ ํ•ฉ

์žฌ๊ท€์ ์œผ๋กœ ํ˜ธ์ถœํ•˜๋ฉด์„œ ํ˜„์žฌ ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๊ตฌ๊ฐ„์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ๋ฐ˜์œผ๋กœ ๋‚˜๋ˆ„๊ณ , ์ด ์ •๋ณด๋ฅผ ์™ผ์ชฝ๊ณผ ์˜ค๋ฅธ์ชฝ ์ž์‹์œผ๋กœ ์ „๋‹ฌํ•ด์„œ ๊ฐ’์„ ๊ตฌํ•œ๋‹ค

3) ์™„์„ฑ




โœจ tl;dr

  • ์„ธ๊ทธ๋จผํŠธ ํŠธ๋ฆฌ์—์„œ์˜ ๊ตฌ๊ฐ„ ํ•ฉ ๊ณ„์‚ฐ ๋ฐ ์›์†Œ ์ˆ˜์ • ๊ณผ์ •์€ ๐‘‚(๐‘™๐‘œ๐‘”๐‘)์˜ ์‹œ๊ฐ„ ๋ณต์žก๋„๋ฅผ ๊ฐ€์ง„๋‹ค

์‹œ๊ฐ„๋ณต์žก๋„: ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š”๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„๊ณผ ์ž…๋ ฅ์˜ ํ•จ์ˆ˜ ๊ด€๊ณ„.
์ปดํ“จํ„ฐ๊ณผํ•™์—์„œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์˜ ์‹œ๊ฐ„๋ณต์žก๋„๋Š” ์ž…๋ ฅ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฌธ์ž์—ด ๊ธธ์ด์˜ ํ•จ์ˆ˜๋กœ์„œ ์ž‘๋™ํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ทจํ•ด ์‹œ๊ฐ„์„ ์ •๋Ÿ‰ํ™”ํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธ

profile
๐Ÿš€ ๋‚ด๊ฐ€ ๋ณด๋ ค๊ณ  ์“ฐ๋Š” ๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ

0๊ฐœ์˜ ๋Œ“๊ธ€