> For the complete documentation index, see [llms.txt](https://garychang.gitbook.io/data-structure/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://garychang.gitbook.io/data-structure/4-graph/4.4-shortest-path-length/4.4.1-dijkstras-algorithm.md).

# 4.4.1 - Dijkstra's algorithm

* 不可有負邊存在

### 1. 演算法

Cost Matrix `C[i][j]`:為一個nxn矩陣，n=|V|

$$C\[i,j]= \begin{cases} 邊長, & \textrm{if (i, j) exists}\ ∞, & \textrm{if (i, j) doesn't exist}\ 0, & \textrm{if i = j} \end{cases}$$&#x20;

$$S\[i]= \begin{cases} 0, & \textrm{未確定起點到i的shortest path length}\ 1, & \textrm{已確定起點到i的shortest path length} \end{cases}$$&#x20;

$$Dist\[i]:\textrm{起點到i的shortest path length}$$&#x20;

<img src="https://2769815795-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGckN3OAfinKuVIrkMj%2F-LIuljw5qYcOG0X9QaWW%2F-LIulmljHpb97Ugj5QuE%2F%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7%202018-08-02%2021.14.56.jpg?alt=media&amp;token=4548c25a-6c9f-4158-98cc-03973adffc0e" alt="" data-size="original">&#x20;

$$Dist\[w]=min{Dist\[w],\ Dist\[u]+C\[u,w]}$$&#x20;

### 2. 範例

&#x20;<img src="https://2769815795-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGckN3OAfinKuVIrkMj%2F-LJ2jIHDpN04ZSqeLEWx%2F-LJ2lqUDIwUpQLci3tOM%2F%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7%202018-08-04%2015.11.53.jpg?alt=media&amp;token=73f3d6f3-15fb-4b98-a3be-ee930c27ac8a" alt="" data-size="original">&#x20;

求5到各點的最短路徑？

![](https://2769815795-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-LGckN3OAfinKuVIrkMj%2F-LJ2jIHDpN04ZSqeLEWx%2F-LJ2mRFmxqsxTVsspEZC%2F%E8%9E%A2%E5%B9%95%E5%BF%AB%E7%85%A7%202018-08-04%2015.14.18.jpg?alt=media\&token=9a7246a3-3415-47c7-9e27-1489a0b71e88)
