Advanced Algorithms in Java

Advanced Algorithms in Java

This course is about advanced algorithms focusing on graph traversal, shortest path problems, spanning trees and maximum flow problems and a lots of its applications from Google Web Crawler to taking advantage of stock market arbitrage situations. 

Section 1:

the basic graph traversal algorithm

breadth-first search algorithm

depth-first search algorithm

Section 2:

shortest path algorithms

Dijkstra's algorithm

Bellman-Ford algorithm

Section 3:

what are spanning trees

union find data structures

Kruskal's algorithm

Prim's algorithm

Section 4:

what are strongly connected components

Kosaraju algorithm

Tarjan algorithm

Section 5:

the famous maximum flow problem

how to reduce most of the hard problems to maximum flow problem

Ford-Fulkerson algorithm

bipartite matching problem

Section 4:

travelling salesman problem (TSP)

how to deal with NP-hard problems

using meta-heuristics: tabu search and simulated annealing

The course is going to take approximately 10 hours to completely but I highly suggest you typing these algorithms out several times in order to get a good grasp of it. You can download the source code of the whole course at the last lecture. 

You should definitely take this course if you are interested in advanced topics concerning algorithms. There are a bunch of fields where these methods can be used: from software engineering to scientific research.

Thanks for joining the course, let's get started!

Download Buy in Udemy