xi / algorithm
General purpose algorithms
Installs: 3 004
Dependents: 0
Suggesters: 0
Security: 0
Stars: 12
Watchers: 18
Forks: 0
Open Issues: 0
Requires
- php: >=5.3.3
Requires (Dev)
- phpunit/phpunit: 3.7.*
This package is not auto-updated.
Last update: 2024-11-09 14:30:10 UTC
README
A collection of miscellaneous algorithms.
Luhn
Usage:
use Xi\Algorithm\Luhn; $luhn = new Luhn(); $luhn->generate(123); // 1230
Topological sort
Sorts the nodes of an acyclic graph so that if node X points to node Y then Y appears before X in the list. Read more.
Basically, it's useful for resolving a dependency graph.
Usage:
// A description of a graph: $edges = array( 'B' => array('C', 'D'), // Node B points to nodes C and D 'A' => array('B'), // Node A points to node B 'C' => array('D'), // Node C points to node D ); $nodesSorted = \Xi\Algorithm\TopologicalSort::apply($edges); // $nodesSorted is now array('D', 'C', 'B', 'A')
Running the tests
No dependencies to other libraries exist, but in order to generate an autoloader first run
composer.phar install --dev
and then run the tests with
phpunit -c tests