Dijkstras algorithm, Data Structure & Algorithms

Assignment Help:

Djikstra's algorithm (named after it is discovered by Dutch computer scientist E.W. Dijkstra) resolves the problem of finding the shortest path through a point in a graph (the source) to a destination along non-negative weight edge.

It turns out that one can determine the shortest paths from given source to all vertices (points) into a graph in the similar time. Therefore, this problem is sometimes called the single-source shortest paths problem. Dijkstra's algorithm is greedy algorithm, which determine shortest path among all pairs of vertices within the graph. Before defining the algorithms formally, let us study the method through an example.

1564_Dijkstras Algorithm.png

Figure: A Directed Graph with no negative edge(s)

Dijkstra's algorithm has two sets of vertices that are following:

S   = set of vertices whose shortest paths from the source have been determined already

Q = V-S is the set of remaining vertices.

The other data structures required are following:

d is array of best estimates of shortest path to each of the  vertex from the source

pi is array of predecessors for each of vertex. predecessor is an array of vertices to which shortest path has already been find out.

The fundamental operation of Dijkstra's algorithm is edge relaxation. If there is any edge from u to v, then the shortest known path from s to u can be extended to a path from s to v by adding up edge (u,v) at the end. This path will have length d[u]+w(u,v). If this is less than d[v], we can replace the current value of d[v] along with new value.

The predecessor list is an array of indices, one for each vertex of any graph. Each vertex entry has the index of its predecessor in a path through the graph.


Related Discussions:- Dijkstras algorithm

Merging 4 sorted files containing 50, Merging 4 sorted files having 50, 10,...

Merging 4 sorted files having 50, 10, 25 and 15 records will take time  O (100)

Define a tree and list its properties, QUESTION (a) Define a tree and l...

QUESTION (a) Define a tree and list its properties. (b) By showing all your workings, draw the spanning tree for the following graph based on the Breadth-First-Search algori

Mcs-021, #questWrite an algorithm for multiplication of two sparse matrices...

#questWrite an algorithm for multiplication of two sparse matrices using Linked Lists.ion..

Draw trace table and determine output of number, Draw trace table and deter...

Draw trace table and determine output from the following flowchart using following data: Number = 45, -2, 20.5

Graph, adjacency multilist

adjacency multilist

State hsv colour model, HSV Colour Model Instead of a set of colour pri...

HSV Colour Model Instead of a set of colour primaries, the HSV model uses colour descriptions that have a more intuitive appeal to a user. To give a colour specification, a use

Methods, what is folding method?

what is folding method?

Draw the process flow diagram, Draw the process flow diagram: Anand   ...

Draw the process flow diagram: Anand   Dairy (AD) sources 150,000 litres of milk daily from large number of local villagers .The milk is collected from 4:00 AM to 6:00 am and

Implement a min-heap, Description A heap is an efficient tree-based data...

Description A heap is an efficient tree-based data structure that can be used as a priority queue. Recall that the abstract data type of a priority queue has the following opera

Representing sparse matrix in memory using array, Q. What do you understand...

Q. What do you understand by the term sparse matrix? How sparse matrix is stored in the memory of a computer? Write down the function to find out the transpose of a sparse matrix u

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd