Jgrapht: ํ”ผ๋ณด๋‚˜์น˜ํž™ ์‚ฌ์šฉ ์ค‘๋‹จ

์— ๋งŒ๋“  2018๋…„ 08์›” 29์ผ  ยท  12์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: jgrapht/jgrapht

GenericFibonacciHeap์— ๋Œ€ํ•œ ๋ชจ๋“  ์ฐธ์กฐ๋ฅผ ์ด๋ฏธ jheap์œผ๋กœ ๊ต์ฒดํ–ˆ์œผ๋ฉฐ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ผ๋ฐ˜์ด ์•„๋‹Œ FibonacciHeap ํด๋ž˜์Šค์— ๋Œ€ํ•ด์„œ๋„ ๋™์ผํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํŠนํžˆ ๋ชจ๋…ธํ†ค ํž™ ๊ตฌํ˜„์ด Djikstra/ClosestFirstIterator์™€ ๊ฐ™์€ ์šฉ๋„์— ๋” ์ž˜ ์ตœ์ ํ™”๋  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์ด ์ž‘์—…์˜ ์ผ๋ถ€๋กœ ์„ฑ๋Šฅ ํšŒ๊ท€๊ฐ€ ์—†๋Š”์ง€ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด ํ˜„์žฌ ์นจ์ž… ์ตœ์ ํ™”(๋ฐ ๊ธฐ๋ณธ ์ด์ค‘)์— ์˜์กดํ•˜๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ๋ฅผ ํ…Œ์ŠคํŠธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

์„ฑ๋Šฅ ๋น„๊ต๋ฅผ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  12 ๋Œ“๊ธ€

์„ฑ๋Šฅ ๋น„๊ต๋ฅผ ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค.

์„ฑ๋Šฅ ๋น„๊ต๋ฅผ ํ•ด๋ณด์•˜๋Š”๋ฐ ๊ฒฐ๊ณผ๋Š” ์ด๋ ‡์Šต๋‹ˆ๋‹ค
ํ”ผ๋ณด๋‚˜์น˜ ํž™ ๋„ค์ดํ‹ฐ๋ธŒ

|ํ…Œ์ŠคํŠธ ์œ ํ˜• | ๋‹ค์ต์ŠคํŠธ๋ผ, us/op | ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ฒซ ๋ฒˆ์งธ ๋ฐ˜๋ณต์ž, us/op |
|-------|-------------------|------- ------------------------|
| ์™„์ „ํ•œ 100 | 165 | 165 |
| ์™„์ „ํ•œ 300 | 1903 | 1920๋…„ |
| ์™„์ „ํ•œ 500 | 9799 | 9526 |
| ์™„์ „ํ•œ 1000 | 54701 | 54474 |
| ์‚ผ๊ฐ. 1000 | 507 | 510 |
| ์‚ผ๊ฐ. 3000 | 1702 | 1695 |
| ์‚ผ๊ฐ. 5000 | 3399 | 3329 |
| ์‚ผ๊ฐ. 10000 | 7420 | 7386 |
| ์‚ผ๊ฐ. 20000 | 17138 | 16867 |
| ์‚ผ๊ฐ. 40000 | 38579 | 38707 |

JHeaps ํ”ผ๋ณด๋‚˜์น˜ ํž™

|ํ…Œ์ŠคํŠธ ์œ ํ˜• | ๋‹ค์ต์ŠคํŠธ๋ผ, us/op | ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ฒซ ๋ฒˆ์งธ ๋ฐ˜๋ณต์ž, us/op |
|-------|-------------------|------- ------------------------|
| ์™„์ „ํ•œ 100 | 172 | 173 |
| ์™„์ „ํ•œ 300 | 2013 | 1984๋…„ |
| ์™„์ „ํ•œ 500 | 11371 | 10108 |
| ์™„์ „ํ•œ 1000 | 56411 | 56650 |
| ์‚ผ๊ฐ. 1000 | 455 | 464 |
| ์‚ผ๊ฐ. 3000 | 1534 | 1595 |
| ์‚ผ๊ฐ. 5000 | 2927 | 3100 |
| ์‚ผ๊ฐ. 10000 | 6985 | 6892 |
| ์‚ผ๊ฐ. 20000 | 15904 | 16159 |
| ์‚ผ๊ฐ. 40000 | 35970 | 36313 |

JHeap ํŽ˜์–ด๋ง ํž™

|ํ…Œ์ŠคํŠธ ์œ ํ˜• | ๋‹ค์ต์ŠคํŠธ๋ผ, us/op | ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ฒซ ๋ฒˆ์งธ ๋ฐ˜๋ณต์ž, us/op |
|------------------------|---------------------|----- --------------------------|
| ์™„์ „ํ•œ 100 | 166 | 165 |
| ์™„์ „ํ•œ 300 | 2017 | 2163 |
| ์™„์ „ํ•œ 500 | 12015 | 11453 |
| ์™„์ „ํ•œ 1000 | 61985 | 63824 |
| ์‚ผ๊ฐ. 1000 | 373 | 375 |
| ์‚ผ๊ฐ. 3000 | 1224 | 1227 |
| ์‚ผ๊ฐ. 5000 | 2637 | 2895 |
| ์‚ผ๊ฐ. 10000 | 5840 | 5941 |
| ์‚ผ๊ฐ. 20000 | 15251 | 15217 |
| ์‚ผ๊ฐ. 40000 | 30799 | 33975 |

์„ฑ๋Šฅ ์ฐจ์ด๋Š” ๊ทธ๋ ‡๊ฒŒ ํฌ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ ์ด์ค‘ ๋ชจ๋…ธํ†ค ๊ธฐ์ˆ˜ ํž™์œผ๋กœ ํ…Œ์ŠคํŠธ๋ฅผ ์‹คํ–‰ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ๊ทธ ์ด์œ ๋Š” ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ์€ ์ฒ˜์Œ์— ๊ฑฐ๋ฆฌ๊ฐ€ 0์ธ ์‹œ์ž‘ ์ •์ ์„ ์‚ฝ์ž…ํ•œ ๋‹ค์Œ(currentMin = 0) ์ œ๊ฑฐํ•œ ๋‹ค์Œ(ํ˜„์žฌ ํž™์˜ currentMin์€ null์ž„) ๊ฑฐ๋ฆฌ๊ฐ€ k์ธ ๋…ธ๋“œ๋ฅผ ์‚ฝ์ž…ํ•œ ๋‹ค์Œ(currentMin์ด k๊ฐ€ ๋จ) ๊ฑฐ๋ฆฌ๊ฐ€ ์žˆ๋Š” ๋…ธ๋“œ๋ฅผ ์‚ฝ์ž…ํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. m < k(k < m ๋•Œ๋ฌธ์— ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•จ). Wikipedia์—๋Š” โ€‹โ€‹"๋ชจ๋…ธํ†ค ์šฐ์„  ์ˆœ์œ„ ๋Œ€๊ธฐ์—ด์˜ ํ•„์š” ์ถฉ๋ถ„ ์กฐ๊ฑด์€ ๊ฐ€์žฅ ์ตœ๊ทผ์— ์ถ”์ถœํ•œ ๊ฒƒ๋ณด๋‹ค ์šฐ์„  ์ˆœ์œ„๊ฐ€ ๋‚ฎ์€ ์š”์†Œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค"๋ผ๊ณ  ๋ช…์‹œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฑฐ๋ฆฌ๊ฐ€ 0์ธ ๊ผญ์ง“์ ์„ ์ œ๊ฑฐํ•œ ํ›„ currentMin ๊ฐ’์ด null์ด ๋˜๋ฉด ์•ˆ ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ ์ฝ”๋“œ์—์„œ๋Š” ํŠน์ˆ˜ํ•œ ๊ฒฝ์šฐ๋กœ ์ฃผ์„ ์ฒ˜๋ฆฌ๋˜์–ด ์žˆ์–ด ์ด๊ฒƒ์ด ๋งž๋Š”์ง€ ์ž˜ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค.

๊ธฐ์ˆ˜ ํž™์€ ํ˜„์žฌ ์ตœ์†Œ๊ฐ’๋ณด๋‹ค ๋‚ฎ์€ ํ‚ค๋ฅผ ๊ฐ€์ง„ ์š”์†Œ๋ฅผ ์‚ฝ์ž…ํ•  ์ˆ˜ ์—†๋„๋ก ์•ฝ๊ฐ„ ๋‹ค๋ฅด๊ฒŒ ๊ตฌํ˜„๋ฉ๋‹ˆ๋‹ค.

Dijkstra๋ฅผ ์•ฝ๊ฐ„ ๋‹ค์‹œ ์ž‘์„ฑํ•˜๋ฉด ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ € findMin() ๋ฅผ ํ˜ธ์ถœํ•œ ๋‹ค์Œ ๊ฐ€์žฅ์ž๋ฆฌ๋ฅผ ์™„ํ™”ํ•˜๊ณ  ๋งˆ์ง€๋ง‰์œผ๋กœ delMin() ๋ฅผ ํ˜ธ์ถœํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค.

๋˜ํ•œ, Dijkstra๋ฅผ ์‹คํ–‰ํ•˜๊ธฐ ์ „์— ๋ชจ๋“  ๊ฐ€์žฅ์ž๋ฆฌ๋ฅผ ๋ฐ˜๋ณตํ•˜๊ณ  ๊ฒฝ๊ณ„ n C ๋ฅผ ๊ณ„์‚ฐํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ C ๋Š” ๊ฐ€์žฅ ํฐ ๊ฐ€์žฅ์ž๋ฆฌ ๊ฐ€์ค‘์น˜์ด๊ณ  n ๋Š” ๋…ธ๋“œ ์ˆ˜์ž…๋‹ˆ๋‹ค. ์ด ๊ฒฝ๊ณ„๋Š” ๊ธฐ์ˆ˜ ํž™์„ ์ดˆ๊ธฐํ™”ํ•  ๋•Œ ์‚ฌ์šฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@Toptachamann ๊ธฐ์ˆ˜ ํž™์„ ๋ณ€๊ฒฝํ•˜์—ฌ ํ˜„์žฌ ์ตœ์†Œ๊ฐ’์ด ์•„๋‹Œ ๋งˆ์ง€๋ง‰์œผ๋กœ ์‚ญ์ œ๋œ ํ‚ค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์š”์†Œ๋ฅผ ๋ฐฐํฌํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ฒŒํ•˜๋ฉด ์ฆ‰์‹œ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค.

@Toptachamann ๊ตฌํ˜„์„ ๋ณ€๊ฒฝํ–ˆ์œผ๋ฉฐ ์ด์ œ ๋ฐ”๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ถœ์‹œํ•˜์ง€ ์•Š์•˜์œผ๋ฏ€๋กœ maven install์„ ์‚ฌ์šฉํ•˜์—ฌ ๋กœ์ปฌ๋กœ ์„ค์น˜ํ•œ ํ›„ ๋ฒ„์ „ 0.9-SNAPSHOT์— ๋Œ€ํ•ด ํ…Œ์ŠคํŠธํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@d-michail ์ด์ œ ์ž˜ ์ž‘๋™ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์‹œ์ž‘ ์ •์ ์ด ์‚ญ์ œ๋œ ํ›„ ๋ฒ„ํ‚ท ์ธ๋ฑ์Šค๋Š” -1์ด ๋˜์ง€๋งŒ currentMin์€ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ๋‚˜๊ฐ€๋Š” ๋ชจ๋“  ๊ฐ€์žฅ์ž๋ฆฌ๋ฅผ ์™„ํ™”ํ•˜๊ณ  ๋‹ค๋ฅธ ์ตœ์†Œ ์š”์†Œ๋ฅผ ์‚ญ์ œํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜๋ฉด java.lang.ArrayIndexOutOfBoundsException: -1 ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.

@Toptachamann ์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ์ž‘์€ ๋ฒ„๊ทธ๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธํ•ด์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ๋ช‡ ๊ฐ€์ง€ ํ…Œ์ŠคํŠธ๋ฅผ ์ˆ˜ํ–‰ํ–ˆ์œผ๋ฉฐ ํ˜„์žฌ ์ตœ์†Œ ์—…๋ฐ์ดํŠธ๊ฐ€ ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ์€ ์ด์ค‘ ๋ชจ๋…ธํ†ค ํž™์— ๋Œ€ํ•œ ๊ฒฐ๊ณผ์ž…๋‹ˆ๋‹ค.

|ํ…Œ์ŠคํŠธ ์œ ํ˜• | ๋‹ค์ต์ŠคํŠธ๋ผ | ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ฒซ ๋ฒˆ์งธ ๋ฐ˜๋ณต์ž |
|--------------------------------|---------------- |------------------------|
| 100์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 10 | 172 | 172 |
| 300์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 10 | 2458 | 2408 |
| 500๊นŒ์ง€ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 10 | 11104 | 10052 |
| 1000์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 10 | 57028 | 56944 |
| 100์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 100 | 185 | 175 |
| 300์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 100 | 2381 | 2464 |
| 500๊นŒ์ง€ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 100 | 11320 | 11313 |
| 1000์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 100 | 64749 | 61865 |
| 100์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 1000 | 190 | 180 |
| 300์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 1000 | 2315 | 2303 |
| 500๊นŒ์ง€ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 1000 | 11034 | 11792 |
| 1000์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 1000 | 65407 | 68292 |
| 100์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 10000 | 186 | 193 |
| 300์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 10000 | 2390 | 2359 |
| 500๊นŒ์ง€ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 10000 | 12667 | 14156 |
| 1000์„ ์™„๋ฃŒํ•˜์‹ญ์‹œ์˜ค. ๋น„. 10000 | 72096 | 71001 |
| ์‚ผ๊ฐ. 1000 | 418 | 418 |
| ์‚ผ๊ฐ. 3000 | 1347 | 1349 |
| ์‚ผ๊ฐ. 5000 | 2426 | 2486 |
| ์‚ผ๊ฐ. 10000 | 6798 | 6559 |
| ์‚ผ๊ฐ. 20000 | 16375 | 16257 |
| ์‚ผ๊ฐ. 40000 | 36574 | 36203 |

๋‚˜๋Š” ๊ทธ๋“ค์ด ์‹คํ–‰ ์‹œ๊ฐ„์„ ์–ด๋–ป๊ฒŒ ๋ณ€๊ฒฝํ•˜๋Š”์ง€ ๋ณด๊ธฐ ์œ„ํ•ด ๋‹ค๋ฅธ ๊ฐ€์žฅ์ž๋ฆฌ ๊ฐ€์ค‘์น˜ ์ƒํ•œ์„ ์‚ฌ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์†๋„ ํ–ฅ์ƒ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์™„์ „ํ•œ ๊ทธ๋ž˜ํ”„์— ๋Œ€ํ•œ ์ตœ์ƒ์˜ ๊ฒฐ๊ณผ๋Š” ํ”ผ๋ณด๋‚˜์น˜ ํž™์˜ ๊ฒฐ๊ณผ์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ํŽ˜์–ด๋ง ํž™์€ ํฌ์†Œ ๊ทธ๋ž˜ํ”„์—์„œ ๋‹ค๋ฅธ ํž™๋ณด๋‹ค ์„ฑ๋Šฅ์ด ๋›ฐ์–ด๋‚ฉ๋‹ˆ๋‹ค.

@Toptachamann ๋‚ด๊ฐ€ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๊ฒŒ์‹œ๋œ ์ง€์ ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

@jsichi ๋ฒค์น˜๋งˆํฌ ๋ถ„๊ธฐ๋ฅผ ํฌํฌ๋กœ ํ‘ธ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฑฐ๊ธฐ์—์„œ ๋‚˜๋Š” ๋‹จ์ง€ Dijkstra์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ๋ฒค์น˜๋งˆํ‚นํ–ˆ์Šต๋‹ˆ๋‹ค. deprecation์„ ํ•ด์•ผ ํ•˜๋‚˜์š”?

์˜ˆ, ์ง€์› ์ค‘๋‹จ์„ ์ง„ํ–‰ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ์ตœ์ ์˜ ํž™ ๊ตฌํ˜„์„ ์„ ํƒํ•˜๋Š” ๋ฐฉ๋ฒ•(๋˜๋Š” MaximumWeightBipartiteMatching์—์„œ์™€ ๊ฐ™์ด ์‚ฌ์šฉ์ž๊ฐ€ ์„ ํƒํ•˜๋„๋ก ํ—ˆ์šฉ)์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๋‚˜๋Š” Dijkstra์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋Œ€ํ•œ ๊ธฐ๋ณธ ํž™์„ ๊ฐ–๊ณ  ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์‚ฌ์šฉ์ž๊ฐ€ ๋‹ค๋ฅธ ํž™์„ ์ œ๊ณตํ•˜๋„๋ก ํ•˜๋Š” ๊ฒƒ์ด ๋” ๋‚ซ๋‹ค๊ณ  ๋งํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. ์ด ์ ‘๊ทผ ๋ฐฉ์‹์€ ๋‘ ๊ฐ€์ง€ ๋ฉด์—์„œ ๋” ์œ ์—ฐํ•ฉ๋‹ˆ๋‹ค. 1. ์‚ฌ์šฉ์ž์—๊ฒŒ ์ž์ฒด ๋ฒค์น˜๋งˆํฌ๋ฅผ ์ˆ˜ํ–‰ํ•˜๊ณ  ๊ฒฐ๊ณผ์— ๋”ฐ๋ผ ํž™์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. 2. jheaps์˜ ํž™์ด ๋‹ค์‹œ ๊ตฌํ˜„๋˜๊ฑฐ๋‚˜ ์–ด๋–ป๊ฒŒ๋“  ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒฝ์šฐ ์ด ์ ‘๊ทผ ๋ฐฉ์‹์œผ๋กœ Dijkstra์˜ ์•Œ๊ณ ๋ฆฌ์ฆ˜์—์„œ ๊ธฐ๋ณธ ํž™ ๊ตฌํ˜„์„ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด ๋” ํŽธ๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

Ps Pairing ํž™์€ ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ edge weight์˜ ์ƒํ•œ์„ ์ด ๋‚ฎ์ง€ ์•Š๊ณ  ๋ชจ๋…ธํ†ค ํž™์— ์ด์ ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— ํ•ฉ๋ฆฌ์ ์ธ ๊ธฐ๋ณธ๊ฐ’์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ฐ€์ค‘์น˜์˜ ๋ฒ”์œ„๊ฐ€ ํฌ์ง€ ์•Š์€ ๊ฒฝ์šฐ Dijkstra ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋ชจ๋…ธํ†ค ํž™์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰

๊ด€๋ จ ๋ฌธ์ œ

hulk-baba picture hulk-baba  ยท  13์ฝ”๋ฉ˜ํŠธ

io7m picture io7m  ยท  53์ฝ”๋ฉ˜ํŠธ

simlu picture simlu  ยท  14์ฝ”๋ฉ˜ํŠธ

IngerMathilde picture IngerMathilde  ยท  5์ฝ”๋ฉ˜ํŠธ

jsichi picture jsichi  ยท  12์ฝ”๋ฉ˜ํŠธ