Skip to content

gyanaggarwal/gen_ord_seq

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

gen_ord_seq

A simple general-purpose functional data structure

This data structure is very similar to Finger Trees (Ralf Hinze and Ross Paterson) in terms of its behavior but differs in actual implementation.

This data structure also supports adding/removing of elements to the ends in amortized constant time and general enough to support deque, ordered sequence (unique/non-unique), ordered map (unique/non-unique), priority queue etc.

This has been implemented in Erlang as a behavior that has 3 callback functions. The actual implementation of these callback functions are provided by specific implementations.

We have included here the following erlang modules:

gen_ord_seq.erl - behavior module os_deque.erl - deque implementation module os_ordered_seq.erl - ordered_seq (unique/non-unique) and ordered_map (unique/non-unique) implementation module os_priority_queue.erl - priority queue implementation module os_demo.erl - demo module

Please refer to document provided in doc folder for more information.

About

A simple general-purpose functional data structure

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages