Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/pavel-kirienko/cavl
Generic single-file implementations of AVL tree in C and C++ suitable for deeply embedded systems. There is little activity because the project is finished.
https://github.com/pavel-kirienko/cavl
avl avl-tree avl-tree-code avl-tree-implementations avl-tree-node avltree avltrees c-container c-data-structures c-data-structures-and-algorithms c-data-types crtp embedded embedded-systems high-integrity
Last synced: about 2 months ago
JSON representation
Generic single-file implementations of AVL tree in C and C++ suitable for deeply embedded systems. There is little activity because the project is finished.
- Host: GitHub
- URL: https://github.com/pavel-kirienko/cavl
- Owner: pavel-kirienko
- License: mit
- Created: 2021-10-05T08:17:11.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-08-24T14:56:49.000Z (4 months ago)
- Last Synced: 2024-10-09T08:08:18.031Z (2 months ago)
- Topics: avl, avl-tree, avl-tree-code, avl-tree-implementations, avl-tree-node, avltree, avltrees, c-container, c-data-structures, c-data-structures-and-algorithms, c-data-types, crtp, embedded, embedded-systems, high-integrity
- Language: C
- Homepage: https://opencyphal.org
- Size: 422 KB
- Stars: 13
- Watchers: 4
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Cavl
[![Main Workflow](https://github.com/pavel-kirienko/cavl/actions/workflows/main.yml/badge.svg)](https://github.com/pavel-kirienko/cavl/actions/workflows/main.yml)
Generic single-file implementation of AVL tree suitable for deeply embedded systems.
**Simply copy `cavl.h` or `cavl.hpp` (depending on which language you need) into your project tree
and you are ready to roll.**
The usage instructions are provided in the comments.
The code is fully covered by manual and randomized tests with full state space exploration.For development-related instructions please refer to the CI configuration files.
To release a new version, simply create a new tag.![Tree](randomized_test_tree.png "Random tree generated by the test suite")