Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/medhiwidjaja/nary_tree

An Elixir implementation of generic n-ary tree data structure
https://github.com/medhiwidjaja/nary_tree

Last synced: about 1 month ago
JSON representation

An Elixir implementation of generic n-ary tree data structure

Awesome Lists containing this project

README

        

# nary_tree

NaryTree is a pure Elixir implementation of the generic tree data structure. NaryTree implements a data structure for an n-ary tree in which each node has zero or more children. A node in a tree can have arbitrary number of children and depth. Trees are unbalanced and children unordered.

It provides a node-based model to store named nodes in the tree, and provides simple APIs to access, modify and traverse the structure.

Currently only depth-first tree-traversal method is supported.

The library implements Enumerable protocol to allow access to the tree using standard Enum functions (map, reduce, count, etc)

NaryTree supports importing from, and exporting to Map.

This is a MIT licensed open source project, and is hosted at github.com/medhiwidjaja/nary_tree, and is available as a standard Hex package from [hex.pm](https://hex.pm/packages/nary_tree).

View documentation at [hexdocs.pm](https://hexdocs.pm/nary_tree/)