Graphs: Difference between revisions

From programming_contest
Jump to navigation Jump to search
imported>Kmk21
No edit summary
imported>Kmk21
No edit summary
 
Line 12: Line 12:
==Adjacency List==
==Adjacency List==
==Implied Graphs==
==Implied Graphs==
==In and Out Nodes==
=Standard Graph Algorithms=
=Standard Graph Algorithms=
==Topological Sort==
==Topological Sort==
==Breadth First Search==
==Breadth First Search==
==Depth First Search
==Depth First Search==
==Minimum Spanning Tree==
==Minimum Spanning Tree==
==Distance Algorithms==
==Distance Algorithms==
Line 24: Line 25:
==Bi-Connected Components==
==Bi-Connected Components==
==Flow and Matching Algorithms==
==Flow and Matching Algorithms==
===Max Flow===
===Max Flow/Min Cut===
===Min Cost Max Flow===
===Min Cost Max Flow===
===Bipartite Matching/Vertex Cover===
===Bipartite Matching/Vertex Cover===
===Min Cost Matching===
===Min Cost Matching===
==State Minimization==
[[Category:Graph]]
[[Category:Graph]]
[[Category:Tutorials]]
[[Category:Tutorials]]

Latest revision as of 06:39, 31 August 2016

Graph problems are so ubiquitous that its unimaginable to have a contest set without multiple graph based problems. To be successful, you must become comfortable working with graphs, representing them, transforming them, and executing well known algorithms on them.

What is a Graph

Graph Properties

Directionality

weightedness

Flow

Bipartite

DAGs

Trees

Graph Representation

Adjacency Matrix

Adjacency List

Implied Graphs

In and Out Nodes

Standard Graph Algorithms

Topological Sort

Breadth First Search

Depth First Search

Minimum Spanning Tree

Distance Algorithms

Dijkstra

Bellman Ford

Floyd-Warshall

Strongly Connected Components

Bi-Connected Components

Flow and Matching Algorithms

Max Flow/Min Cut

Min Cost Max Flow

Bipartite Matching/Vertex Cover

Min Cost Matching

State Minimization