strongly-connected-components
Computes strongly connected components of a directed graph
Last updated 11 years ago by mikolalysenko .
MIT · Repository · Bugs · Original npm
$ cnpm install strongly-connected-components 
SYNC missed versions from official npm registry.

strongly-connected-components

Given a directed graph, splits it into strongly connected components.

Example

var scc = require("strongly-connected-components")

var adjacencyList = [
  [4], // 0
  [0,2], // 1
  [1,3], // 2
  [2], // 3
  [1], // 4
  [4,6], // 5
  [5,2], // 6
  [7,6,3], // 7
]

console.log(scc(adjacencyList))

Install

npm install strongly-connected-components

API

require("strongly-connected-components")(adjacencyList)

Computes the strongly connected components of a graph using Tarjan's algorithm.

  • adjacencyList is an array of lists representing the directed edges of the graph

Returns An object containing:

  • components: an array of arrays representing the partitioning of the vertices in the graph into connected components.
  • adjacencyList: an array lists representing the directed edges of the directed acyclic graph between the strongly connected components

Credits

(c) 2013 Mikola Lysenko. MIT License. Based on the implementation of Tarjan's algorithm on Wikipedia.

Current Tags

  • 1.0.1                                ...           latest (11 years ago)

1 Versions

  • 1.0.1                                ...           11 years ago
Maintainers (1)
Downloads
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 0
Dependencies (0)
None
Dev Dependencies (2)
Dependents (0)
None

Copyright 2013 - present © cnpmjs.org