Graph algorithms implemented in TypeScript using Immutable.JS for the graph's implementation. The following algorithms are implemented:
- breadth-first traversal
- depth-first traversal
- topological traversal
The library also includes two helper classes:
ReverseGraph
: flips the direction of the edges in a directed graphUndirectedGraph
: transforms the directed graph into an undirected one
- A*
- Dijkstra's algorithm
- Bellman-Ford algorithm
- Weakly connected components
- Strongly connected components
- Tarjan
- Kosaraju
- Cycle detection
- Shortest path
- Topological sort