# Advanced Algorithms (Graph Algorithms) in Java

Online Courses Udemy - Advanced Algorithms (Graph Algorithms) in Java, Graph Algorithms, Breadth-First Search, Depth-First Search, Shortest Path, Arbitrage and Strongly Connected Components

- Bestseller
- Created by Holczer Balazs
- English [Auto], Spanish [Auto]

This course is about advanced algorithms (graph 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 - Graphs Theory Basics:

what is a G(V,E) graph

adjacency matrix representation

adjacency list representation

Section 2 - Graph Traversal (Breadth-First Search)

what is breadth-first search?

how to use BFS for WebCrawling in search engines?

Section 3 - Graph Traversal (Depth-First Search)

what is depth-first search?

how to use recursion to implement DFS

applications of DFS such as topological ordering and cycle detection

find way out of a maze with DFS

Section 4 - Topological Ordering

what is topological ordering (topological sort)

directed acyclic graphs (DAGs)

DAG shortest path and longest path

critical path methods and project management

Section 5 - Cycle Detection

what are cycles in a graph?

forward edges and backward edges

cycle detection algorithms (Tarjan's algorithm with DFS)

Section 6 - Dijkstra's Shortest Path Algorithm

what is a shortest path in a G(V,E) graph

Dijkstra's shortest path algorithm

Section 7 - Bellman-Ford Shortest Path Algorithm

Bellman-Ford algorithm

how to handle negative cycles

finding arbitrage opportunities on the FOREX

Section 8: - Spanning Trees (Kruskal and Prim's Algorithms)

what are spanning trees?

union find data structures

Kruskal's algorithm

Prim's algorithm

Section 9 - Strongly Connected Components (SCCs)

what are strongly connected components

Kosaraju's algorithm

Tarjan's algorithm

Section 10 - Maximum Flow Problem

the famous maximum flow problem

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

Ford-Fulkerson algorithm

bipartite matching problem

Section 9 - Travelling Salesman Problem and Hamiltonian Cycles:

travelling salesman problem (TSP)

how to deal with NP-hard problems

what are meta-heuristics

Section 10 - Eulerian Paths

eulerian paths and eulerian cycles

Hierholzer algorithm and the Chinese Postman Problem

The course is going to take approximately 11 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!

**Who this course is for:**

This course is meant for everyone from scientists to software developers who want to get closer to algorithmic thinking in the main

100% Off Udemy Coupon . Free Udemy Courses . Online Classes

## Posting Komentar untuk "Advanced Algorithms (Graph Algorithms) in Java"