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

์นดํ…Œ๊ณ ๋ฆฌ ์—†์Œ

[์•Œ๊ณ ๋ฆฌ์ฆ˜] ๋ฒจ๋งŒ-ํฌ๋“œ(Bellman-Ford) ์•Œ๊ณ ๋ฆฌ์ฆ˜

๐Ÿ’ก ๋ฒจ๋งŒ-ํฌ๋“œ(Bellman-Ford) ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด๋ž€?

๋ฒจ๋งŒ-ํฌ๋“œ

  • ํ•œ ๋…ธ๋“œ์—์„œ ๋‹ค๋ฅธ ๋ชจ๋“  ๋…ธ๋“œ๊นŒ์ง€ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•˜๋Š” ์•Œ๊ณ ๋ฆฌ์ฆ˜
  • ๋งค ๋‹จ๊ณ„๋งˆ๋‹ค ๋ชจ๋“  ๊ฐ„์„ ์„ ์ „๋ถ€ ํ™•์ธํ•˜๋ฉด์„œ ๋ชจ๋“  ๋…ธ๋“œ ๊ฐ„์˜ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•จ
    • ๋‹ค์ต์ŠคํŠธ๋ผ๋Š” ๋ฐฉ๋ฌธํ•˜์ง€ ์•Š์€ ๋…ธ๋“œ ์ค‘ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๊ฐ€ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๋…ธ๋“œ๋ฅผ ๋ฐฉ๋ฌธํ•จ
  • ๊ฐ„์„  ๊ฐ€์ค‘์น˜๊ฐ€ ์Œ์ˆ˜์ผ ๋•Œ๋„ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ์Œ
  • ์‹œ๊ฐ„ ๋ณต์žก๋„: O($VE$)

์•Œ๊ณ ๋ฆฌ์ฆ˜ ๊ตฌํ˜„ ๋ฐฉ์‹

  • ์•„๋ž˜ ๊ณผ์ •์„ V-1 ๋ฒˆ ๋ฐ˜๋ณต
    • ๋ชจ๋“  ๊ฐ„์„  E๊ฐœ์— ๋Œ€ํ•ด ๊ฐ ๊ฐ„์„ ์„ ๊ฑฐ์ณ ๋‹ค๋ฅธ ๋…ธ๋“œ๋กœ ๊ฐ€๋Š” ๋น„์šฉ์„ ๊ณ„์‚ฐ ํ›„ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ ํ…Œ์ด๋ธ” ๊ฐฑ์‹ 
    • ์Œ์ˆ˜ ์‚ฌ์ดํด์ด ์กด์žฌํ•˜๋Š”์ง€ ์ฒดํฌํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๊ณผ์ •์„ ํ•œ๋ฒˆ ๋” ์ˆ˜ํ–‰
    • → ์ด ๋•Œ ์ตœ๋‹จ ๊ฑฐ๋ฆฌ ํ…Œ์ด๋ธ”์ด ๋ณ€ํ™”๊ฐ€ ์žˆ๋‹ค๋ฉด ์Œ์ˆ˜ ๊ฐ„์„  ์ˆœํ™˜ ์กด์žฌ
  1. ์ดˆ๊ธฐ ์ƒํƒœ

 

A B C D E
INF INF INF INF INF

 

 

 

 

 

2. ๋ชจ๋“  edge ํƒ์ƒ‰ํ•˜์—ฌ ๋…ธ๋“œ ์ตœ์†Ÿ๊ฐ’ ์—…๋ฐ์ดํŠธ

 

- A out ๊ฐ„์„  ํƒ์ƒ‰ํ•˜์—ฌ ์ฃผ๋ณ€ ๋…ธ๋“œ ์—…๋ฐ์ดํŠธ

A B C D E
0 -1 4 INF INF

 

 

 

 

- B out ๊ฐ„์„  ํƒ์ƒ‰ํ•˜์—ฌ ์ฃผ๋ณ€ ๋…ธ๋“œ ์—…๋ฐ์ดํŠธ

A B C D E
0 -1 2 0 1

 

 

 

 

 

- C out ๊ฐ„์„  ํƒ์ƒ‰ํ•˜์—ฌ ์ฃผ๋ณ€ ๋…ธ๋“œ ์—…๋ฐ์ดํŠธ

A B C D E
0 -1 2 0 1

 

 

 

 

 

- D out ๊ฐ„์„  ํƒ์ƒ‰ํ•˜์—ฌ ์ฃผ๋ณ€ ๋…ธ๋“œ ์—…๋ฐ์ดํŠธ

A B C D E
0 -1 2 0 1

 

 

 

- E out ๊ฐ„์„  ํƒ์ƒ‰ํ•˜์—ฌ ์ฃผ๋ณ€ ๋…ธ๋“œ ์—…๋ฐ์ดํŠธ

A B C D E
0 -1 2 0 1

 

 

 

 

- ์ฒซ ๋ฒˆ์งธ ์‚ฌ์ดํด ์™„๋ฃŒ

A B C D E
0 -1 2 0 1

 

 

 

 

- ์ด๋Ÿฐ ๊ณผ์ •์˜ ํƒ์ƒ‰์„ V-1๋ฒˆ ์ง„ํ–‰

- ์ˆœ์„œ๋Š” ๊ผญ ๋…ธ๋“œ ์ˆœ์„œ๋Œ€๋กœ A, B, C, D, E๊ฐ€ ์•„๋‹ˆ์–ด๋„ ๋œ๋‹ค. ๋ชจ๋“  edge๋ฅผ ํƒ์ƒ‰ํ•˜๋Š” ๊ฒƒ์ด ์ค‘์š”!!!