14 Facts About Dijkstra's algorithm

1.

Dijkstra's original algorithm found the shortest path between two given nodes, but a more common variant fixes a single node as the "source" node and finds shortest paths from the source to all other nodes in the graph, producing a shortest-path tree.

FactSnippet No. 1,234,745
2.

For example, if the nodes of the graph represent cities and edge path costs represent driving distances between pairs of cities connected by a direct road, Dijkstra's algorithm can be used to find the shortest route between one city and all other cities.

FactSnippet No. 1,234,746
3.

Dijkstra Dijkstra's algorithm uses labels that are positive integers or real numbers, which are totally ordered.

FactSnippet No. 1,234,747
4.

Dijkstra's algorithm uses a data structure for storing and querying partial solutions sorted by distance from the start.

FactSnippet No. 1,234,748
5.

Dijkstra's algorithm's objective was to choose both a problem and a solution that non-computing people could understand.

FactSnippet No. 1,234,749
6.

Dijkstra's algorithm designed the shortest path algorithm and later implemented it for ARMAC for a slightly simplified transportation map of 64 cities in the Netherlands .

FactSnippet No. 1,234,750
7.

When planning a route, it is actually not necessary to wait until the destination node is "visited" as above: the Dijkstra's algorithm can stop once the destination node has the smallest tentative distance among all "unvisited" nodes .

FactSnippet No. 1,234,751
8.

Proof of Dijkstra's algorithm is constructed by induction on the number of visited nodes.

FactSnippet No. 1,234,752
9.

Sparse graphs, that is, graphs with far fewer than edges, Dijkstra's algorithm can be implemented more efficiently by storing the graph in the form of adjacency lists and using a self-balancing binary search tree, binary heap, pairing heap, or Fibonacci heap as a priority queue to implement extracting minimum efficiently.

FactSnippet No. 1,234,753
10.

The resulting Dijkstra's algorithm is called uniform-cost search in the artificial intelligence literature and can be expressed in pseudocode as.

FactSnippet No. 1,234,754
11.

Dijkstra's algorithm is usually the working principle behind link-state routing protocols, OSPF and IS-IS being the most common ones.

FactSnippet No. 1,234,755
12.

Process that underlies Dijkstra's algorithm is similar to the greedy process used in Prim's algorithm.

FactSnippet No. 1,234,756
13.

From a dynamic programming point of view, Dijkstra's algorithm is a successive approximation scheme that solves the dynamic programming functional equation for the shortest path problem by the Reaching method.

FactSnippet No. 1,234,757
14.

The Dijkstra's algorithm has been used to calculate optimal long-distance footpaths in Ethiopia and contrast them with the situation on the ground.

FactSnippet No. 1,234,758