• toc {:toc}

ํŠธ๋ฆฌ์˜ ๊ธฐ๋ณธ ๊ฐœ๋…

  • ํŠธ๋ฆฌ : ํ•˜๋‚˜ ์ด์ƒ์˜ ๋…ธ๋“œ๋กœ ๊ตฌ์„ฑ๋œ ์œ ํ•œ ์ง‘ํ•ฉ
  • ํŠธ๋ฆฌ ์‘์šฉ ๋ถ„์•ผ
    • ์ตœ์ ํ™” ๋ฌธ์ œ ํ•ด๊ฒฐ
    • ์•Œ๊ณ ๋ฆฌ์ฆ˜
    • ๋ถ„์ž๊ตฌ์กฐ์‹ ์„ค๊ณ„, ํ™”ํ•™๊ฒฐํ•ฉ ํ‘œ์‹œ
  • ๋ฃจํŠธ : ๊ทธ๋ž˜ํ”„์˜ ์‹œ์ž‘ ๋…ธ๋“œ. ๊ฐ€์žฅ ๋†’์€ ๊ณณ์— ์œ„์น˜ํ•œ๋‹ค.
  • ์ฐจ์ˆ˜ : ํ•ด๋‹น ๋…ธ๋“œ์˜ ์‹œ์ ์—์„œ ์„œ๋ธŒ ํŠธ๋ฆฌ์˜ ๊ฐœ์ˆ˜
  • ์žŽ ๋…ธ๋“œ : ์ฐจ์ˆ˜๊ฐ€ 0 ์ธ ๋…ธ๋“œ, ๋งจ ์•„๋ž˜์— ์œ„์น˜
  • ์ž์‹ ๋…ธ๋“œ : ์–ด๋–ค ๋…ธ๋“œ์˜ ์„œ๋ธŒ ํŠธ๋ฆฌ์˜ ๋ฃจํŠธ ๋…ธ๋“œ
  • ๋ถ€๋ชจ ๋…ธ๋“œ
  • ํ˜•์ œ ๋…ธ๋“œ : ๋™์ผํ•œ ๋ถ€๋ชจ๋ฅผ ๊ฐ–๋Š” ๋…ธ๋“œ
  • ์ค‘๊ฐ„ ๋…ธ๋“œ : ๋ฃจํŠธ๋„ ์•„๋‹ˆ๊ณ  ์žŽ ๋…ธ๋“œ๋„ ์•„๋‹Œ ๋…ธ๋“œ
  • ์กฐ์ƒ : ํ•ด๋‹น ๋…ธํŠธ๋ถ€ํ„ฐ ๋ฃจํŠธ๊นŒ์ง€์˜ ๊ฒฝ๋กœ์— ์žˆ๋Š” ๋ชจ๋“  ๋…ธ๋“œ
  • ์ž์† : ํ•ด๋‹น ๋…ธ๋“œ๋ถ€ํ„ฐ ์žŽ ๋…ธ๋“œ์— ์ด๋ฅด๋Š” ๋ชจ๋“  ๋…ธ๋“œ
  • ๋ ˆ๋ฒจ
  • ํŠธ๋ฆฌ์˜ ๋†’์ด : ํŠธ๋ฆฌ์—์„œ ๋…ธ๋“œ๊ฐ€ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ ๋ ˆ๋ฒจ (ํŠธ๋ฆฌ์˜ ๊นŠ์ด)
  • ์ˆฒ : ์„œ๋กœ ์—ฐ๊ฒฐ๋˜์ง€ ์•Š๋Š” ํŠธ๋ฆฌ๋“ค์˜ ์ง‘ํ•ฉ : ๋ฃจํŠธ๋ฅผ ์ œ๊ฑฐํ•˜๋ฉด ์ˆฒ์„ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค.
  • ๊ทธ๋ž˜ํ”„ G = (V, E) ์—์„œ V ์˜ ์›์†Œ์˜ ๊ฐœ์ˆ˜ = n, E ์˜ ์›์†Œ์˜ ๊ฐœ์ˆ˜ = m ์ผ ๋•Œ ๋‹ค์Œ์€ ๋™์น˜์ด๋‹ค.
    • G ๋Š” ํŠธ๋ฆฌ์ด๋‹ค.
    • G ๋Š” ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๊ณ  m = n-1 ์ด๋‹ค. ์—ฐ๊ฒฐ์„  = ๋…ธ๋“œ - 1
    • G ๋Š” ์—ฐ๊ฒฐ๋˜์–ด ์žˆ๊ณ  ์–ด๋А ํ•œ ์—ฐ๊ฒฐ์„ ๋งŒ์„ ์ œ๊ฑฐํ•˜๋ฉด G ๋Š” ์—ฐ๊ฒฐ๋˜์ง€ ์•Š๋Š”๋‹ค.
    • G ๋Š” ์‚ฌ์ดํด์„ ๊ฐ€์ง€์ง€ ์•Š๋Š”๋‹ค.
    • G ๋Š” ์–ด๋А ํ•œ ์—ฐ๊ฒฐ์„ ๋งŒ ์ฒจ๊ฐ€ํ•ด๋„ ์‚ฌ์ดํด์„ ํ˜•์„ฑํ•œ๋‹ค.
  • n- ํŠธ๋ฆฌ : ๋ชจ๋“  ์ค‘๊ฐ„ ๋…ธ๋“œ๋“ค์ด ์ตœ๋Œ€ n ๊ฐœ์˜ ์ž์‹ ๋…ธ๋“œ๋ฅผ ๊ฐ€์งˆ ๋•Œ
    • ์ด์ง„ ํŠธ๋ฆฌ : n ์ด 2 ์ธ ๊ฒฝ์šฐ

๋ฐฉํ–ฅ ํŠธ๋ฆฌ

  • ๋ฐฉํ–ฅ์ด ์žˆ๊ณ  ์ˆœ์„œํ™”๋œ ํŠธ๋ฆฌ
    • ๋ฃจํŠธ ๋…ธ๋“œ๊ฐ€ ํ•˜๋‚˜๊ฐ€ ์žˆ๋‹ค. ๋ฃจํŠธ์—์„œ๋Š” ๋ชจ๋“  ๋…ธ๋“œ๋กœ ๊ฐˆ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ๋กœ๊ฐ€ ์žˆ๋‹ค.
  • ๋ฃจํŠธ๋ฅผ ์ œ์™ธํ•œ ๋ชจ๋“  ๋…ธ๋“œ๋“ค์€ ์˜ค์ง ํ•˜๋‚˜์”ฉ๋งŒ์˜ ์„ ํ–‰์ž๋ฅผ ๊ฐ€์ง„๋‹ค.
  • ๊ฐ ๋…ธ๋“œ์˜ ํ›„์†์ž๋“ค์€ ์™ผ์ชฝ์œผ๋กœ๋ถ€ํ„ฐ ์ˆœ์„œํ™”๋˜์–ด ์žˆ๋‹ค.

์ด์ง„ ํŠธ๋ฆฌ

  • ์‚ฌํ–ฅ ์ด์ง„ ํŠธ๋ฆฌ : ์™ผ์ชฝ, ์˜ค๋ฅธ์ชฝ์œผ๋กœ ํŽธํ–ฅ๋œ ํŠธ๋ฆฌ์˜ ๊ตฌ์กฐ
  • ์™„์ „ ์ด์ง„ ํŠธ๋ฆฌ : ๋†’์ด๊ฐ€ k ์ผ ๋•Œ ๋ ˆ๋ฒจ 1 ๋ถ€ํ„ฐ k-1 ๊นŒ์ง€๋Š” ๋ชจ๋‘ ์ฐจ์žˆ๊ณ  k ์—์„œ๋Š” ์™ผ์ชฝ ๋…ธ๋“œ๋ถ€ํ„ฐ ์ฐจ ์žˆ๋Š” ์ด์ง„ ํŠธ๋ฆฌ
  • ํฌํ™” ์ด์ง„ ํŠธ๋ฆฌ : ์žŽ ๋…ธ๋“œ๊ฐ€ ์•„๋‹Œ ๊ฒƒ๋“ค์€ ๋ชจ๋‘ 2 ๊ฐœ์”ฉ์˜ ์ž์‹ ๋…ธ๋“œ๋ฅผ ๊ฐ€์ง€๊ณ  ํŠธ๋ฆฌ์˜ ๋†’์ด๊ฐ€ ์ผ์ •ํ•œ ๊ฒฝ์šฐ
  • ์ด์ง„ ํŠธ๋ฆฌ๊ฐ€ ๋ ˆ๋ฒจ i ์—์„œ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ํ•œ์˜ ๋…ธ๋“œ ์ˆ˜ = ๊ฐœ
  • ๋†’์ด๊ฐ€ k ์ธ ์ด์ง„ ํŠธ๋ฆฌ๊ฐ€ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” ์ตœ๋Œ€ํ•œ์˜ ๋…ธ๋“œ ์ˆ˜ =
  • ์ด์ง„ ํŠธ๋ฆฌ์—์„œ ์žŽ ๋…ธ๋“œ์˜ ๊ฐœ์ˆ˜ = n, ์ฐจ์ˆ˜๊ฐ€ 2 ์ธ ๋…ธ๋“œ์˜ ๊ฐœ์ˆ˜๋ฅผ m ์ด๋ผ ํ•  ๋•Œ n=m+1 ์ด ํ•ญ์ƒ ์„ฑ๋ฆฝํ•œ๋‹ค.

์ด์ง„ ํŠธ๋ฆฌ์˜ ํƒ๋ฐฉ

  • ์ค‘์ˆœ์œ„ ํƒ๋ฐฉ (inorder, LDR)

    1. ํŠธ๋ฆฌ์˜ ์™ผ์ชฝ ์„œ๋ธŒ ํŠธ๋ฆฌ๋ฅผ ํƒ๋ฐฉํ•œ๋‹ค.
    2. ๋…ธ๋“œ๋ฅผ ๋ฐฉ๋ฌธํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
    3. ํŠธ๋ฆฌ์˜ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒ ํŠธ๋ฆฌ๋ฅผ ํƒ๋ฐฉํ•œ๋‹ค.
  • ์ „์ˆœ์œ„ ํƒ๋ฐฉ (preorder, DLR)

    1. ๋…ธ๋“œ๋ฅผ ํƒ๋ฐฉํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
    2. ํŠธ๋ฆฌ์˜ ์™ผ์ชฝ ์„œ๋ธŒ ํŠธ๋ฆฌ๋ฅผ ํƒ๋ฐฉํ•œ๋‹ค.
    3. ํŠธ๋ฆฌ์˜ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒ ํŠธ๋ฆฌ๋ฅผ ํƒ๋ฐฉํ•œ๋‹ค.
  • ํ›„์ˆœ์œ„ ํƒ๋ฐฉ (postorder, LRD)

    1. ํŠธ๋ฆฌ์˜ ์™ผ์ชฝ ์„œ๋ธŒ ํŠธ๋ฆฌ๋ฅผ ํƒ๋ฐฉํ•œ๋‹ค.
    2. ํŠธ๋ฆฌ์˜ ์˜ค๋ฅธ์ชฝ ์„œ๋ธŒ ํŠธ๋ฆฌ๋ฅผ ํƒ๋ฐฉํ•œ๋‹ค.
    3. ๋…ธ๋“œ๋ฅผ ํƒ๋ฐฉํ•˜๊ณ  ๋ฐ์ดํ„ฐ๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

์ƒ์„ฑ ํŠธ๋ฆฌ์™€ ์ตœ์†Œ ๋น„์šฉ ์ƒ์„ฑ ํŠธ๋ฆฌ

  • ์ƒ์„ฑ ํŠธ๋ฆฌ : ๊ทธ๋ž˜ํ”„ G ์—์„œ ๋ชจ๋“  ๋…ธ๋“œ๋ฅผ ํฌํ•จํ•˜๋Š” ํŠธ๋ฆฌ

  • ์ƒ์„ฑ ํŠธ๋ฆฌ์˜ ๋น„์šฉ : ํŠธ๋ฆฌ ์—ฐ๊ฒฐ์„ ์˜ ๊ฐ’์„ ๋ชจ๋‘ ํ•ฉํ•œ ๊ฐ’

  • ์ตœ์†Œ ๋น„์šฉ ์ƒ์„ฑ ํŠธ๋ฆฌ (Minimum Spanning Tree : MST) : ์ตœ์†Œ ๋น„์šฉ์„ ๊ฐ–๋Š” ์ƒ์„ฑ ํŠธ๋ฆฌ

  • ํ”„๋ฆผ์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜

    • ์ฃผ์–ด์ง„ ๊ฐ€์ค‘ ๊ทธ๋ž˜ํ”„ G = (V, E) ์—์„œ V = {1, 2, โ€ฆ, n} ์ด๋ผ๊ณ  ํ•˜์ž.
    1. ๋…ธ๋“œ์˜ ์ง‘ํ•ฉ U ๋ฅผ 1 ๋กœ ์‹œ์ž‘ํ•œ๋‹ค.
    2. , ์ผ ๋•Œ U, V-U ๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฐ€์žฅ ์งง์€ ์—ฐ๊ฒฐ์„ ์„ ์ฐพ์•„ v ๋ฅผ U ์— ํฌํ•จ์‹œํ‚จ๋‹ค. ์ด๋•Œ, ์‚ฌ์ดํด์„ ํ˜•์„ฑํ•˜์ง€ ์•Š๋Š” ์—ฐ๊ฒฐ์„ ์„ ์ฐพ๋Š”๋‹ค.
    3. 2 ๋ฒˆ์˜ ๊ณผ์ •์„ U=V ๋•Œ๊นŒ์ง€ ๋ฐ˜๋ณตํ•œ๋‹ค.
  • ํฌ๋ฃจ์Šค์นผ ์•Œ๊ณ ๋ฆฌ์ฆ˜

    • ์ฃผ์–ด์ง„ ๊ฐ€์ค‘ ๊ทธ๋ž˜ํ”„ G = (V, E) ์—์„œ V = {1, 2, โ€ฆ, n} ์ด๋ผ๊ณ  ํ•˜๊ณ  T ๋ฅผ ์—ฐ๊ฒฐ์„ ์˜ ์ง‘ํ•ฉ์ด๋ผ ํ•˜์ž.
    1. T ๋ฅผ ๊ณต์ง‘ํ•ฉ์œผ๋กœ ๋†“๋Š”๋‹ค.
    2. ์—ฐ๊ฒฐ์„ ์˜ ์ง‘ํ•ฉ E ๋ฅผ ๋น„์šฉ์ด ์ ์€ ์ˆœ์„œ๋กœ ์ •๋ ฌํ•˜๋‹ค.
    3. ๊ฐ€์žฅ ์ตœ์†Œ๊ฐ’์„ ๊ฐ€์ง„ ์—ฐ๊ฒฐ์„ ์„ ์ฐจ๋ก€๋กœ ์ฐพ์•„๊ฐ€ ์‚ฌ์ดํด์„ ์ด๋ฃจ์ง€ ์•Š์œผ๋ฉด ์—ฐ๊ฒฐ์„ ์„ T ์— ํฌํ•จ์‹œํ‚จ๋‹ค.
    4. 3 ๋ฒˆ์˜ ๊ณผ์ •์„ T ์˜ ์›์†Œ์˜ ๊ฐœ์ˆ˜ = V ์˜ ์›์†Œ์˜ ๊ฐœ์ˆ˜ - 1