Skip to content

danswartzendruber/avl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

avl

Overview

This is a zero-dependency, high performance GO implementation of AVL trees. It is intended to be incorporated into GO programming projects that need to use self-balancing binary search trees

This implementation is "intrusive", meaning that the tree node structure must be embedded inside the data structure to be indexed in the tree

This implementation is non-recursive, so it does not suffer from stack overflows

Features

Briefly, the supported operations are:

  • Insertion
  • Deletion
  • Search
  • In-order traversal (forwards and backwards)
  • Post-order traversal

See avl.go for details

Files

  • avl.go Functions and type definitions

License

This code and its accompanying files have been released into the public domain. There is NO WARRANTY, to the extent permitted by law. See the CC0 Public Domain Dedication in the COPYING file for details

Credits

This GO package was ported from a "C" implementation. The original "C" implementation was by Eric Biggins

About

An AVL tree package ported to GO from "C"

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages