Skip to content
/ grapherx Public

⛓ Library for work with directed acyclic graphs

Notifications You must be signed in to change notification settings

rejth/grapherx

Repository files navigation

🛠 GrapherX

Simple library for work with directed acyclic graphs.

A graph is based on the Adjacency List and provides the features below.

V - the total number of Vertices.
E - the total number of Edges in the Graph.

Available features with algorithmic complexity:

  • Add Vertex - O(1)
  • Add Edge - O(1)
  • Update Vertex and get adjacent Vertices - O(1)
  • Remove Vertex - O(V + E)
  • Remove Edge - O(E)
  • Breadth First search - O(V + E)
  • Depth First search - O(V + E)
  • Detect cycles in Graph - O(V + E)
  • Find the shortest path between two Vertices - O(V + E)
  • Check if a path exists between two Vertices - O(V + E)
  • Find Mother Vertex - O(V(V + E))

Get Started

Prerequisites:

  • Node 16+
  • npm 5+
  • git latest

To set up the app execute the following commands.

git clone https://github.com/rejth/grapherx.git
cd grapherx
npm install

Available scripts

npm run build

Builds the app for production to the dist folder.

npm run test

Run unit tests.

npm run declarations

Generate types declarations.

About

⛓ Library for work with directed acyclic graphs

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published