All Projects → fmela → Libdict

fmela / Libdict

Licence: bsd-2-clause
C library of key-value data structures.

Programming Languages

c
50402 projects - #5 most used programming language

Projects that are alternatives of or similar to Libdict

Gods
GoDS (Go Data Structures). Containers (Sets, Lists, Stacks, Maps, Trees), Sets (HashSet, TreeSet, LinkedHashSet), Lists (ArrayList, SinglyLinkedList, DoublyLinkedList), Stacks (LinkedListStack, ArrayStack), Maps (HashMap, TreeMap, HashBidiMap, TreeBidiMap, LinkedHashMap), Trees (RedBlackTree, AVLTree, BTree, BinaryHeap), Comparators, Iterators, …
Stars: ✭ 10,883 (+4550.85%)
Mutual labels:  tree, iterator, avl-tree, map
Containers
This library provides various containers. Each container has utility functions to manipulate the data it holds. This is an abstraction as to not have to manually manage and reallocate memory.
Stars: ✭ 125 (-46.58%)
Mutual labels:  data-structures, tree, avl-tree, map
Buckets Js
A complete, fully tested and documented data structure library written in pure JavaScript.
Stars: ✭ 1,128 (+382.05%)
Mutual labels:  data-structures, tree, dictionary, map
Imtools
Fast and memory-efficient immutable collections and helper data structures
Stars: ✭ 85 (-63.68%)
Mutual labels:  data-structures, dictionary, avl-tree, map
Javascript Datastructures Algorithms
📚 collection of JavaScript and TypeScript data structures and algorithms for education purposes. Source code bundle of JavaScript algorithms and data structures book
Stars: ✭ 3,221 (+1276.5%)
Mutual labels:  data-structures, tree, dictionary, avl-tree
Stencil Store
Store is a lightweight shared state library by the StencilJS core team. Implements a simple key/value map that efficiently re-renders components when necessary.
Stars: ✭ 107 (-54.27%)
Mutual labels:  dictionary, key-value, map
Collectable
High-performance immutable data structures for modern JavaScript and TypeScript applications. Functional interfaces, deep/composite operations API, mixed mutability API, TypeScript definitions, ES2015 module exports.
Stars: ✭ 233 (-0.43%)
Mutual labels:  data-structures, dictionary, map
php-sorted-collections
Sorted Collections for PHP
Stars: ✭ 22 (-90.6%)
Mutual labels:  map, tree, iterator
Data Structures
Go datastructures.
Stars: ✭ 336 (+43.59%)
Mutual labels:  data-structures, tree, avl-tree
C Sharp Algorithms
📚 📈 Plug-and-play class-library project of standard Data Structures and Algorithms in C#
Stars: ✭ 4,684 (+1901.71%)
Mutual labels:  data-structures, tree, hashing
Redux Data Structures
Reducer factory functions for common data structures: counters, maps, lists (queues, stacks), sets, etc.
Stars: ✭ 157 (-32.91%)
Mutual labels:  data-structures, dictionary, map
Leetcode
LeetCode Solutions: A Record of My Problem Solving Journey.( leetcode题解,记录自己的leetcode解题之路。)
Stars: ✭ 45,650 (+19408.55%)
Mutual labels:  data-structures, tree
Eternal
A C++14 compile-time/constexpr map and hash map with minimal binary footprint
Stars: ✭ 93 (-60.26%)
Mutual labels:  hashing, map
Gkvdb
[mirror] Go语言开发的基于DRH(Deep-Re-Hash)深度哈希分区算法的高性能高可用Key-Value嵌入式事务数据库。基于纯Go语言实现,具有优异的跨平台性,良好的高可用及文件IO复用设计,高效的底层数据库文件操作性能,支持原子操作、批量操作、事务操作、多表操作、多表事务、随机遍历等特性。
Stars: ✭ 109 (-53.42%)
Mutual labels:  iterator, key-value
Pybktree
Python BK-tree data structure to allow fast querying of "close" matches
Stars: ✭ 117 (-50%)
Mutual labels:  data-structures, tree
Data Structures
This repository contains some data structures implementation in C programming language. I wrote the tutorial posts about these data structures on my personal blog site in Bengali language. If you know Bengali then visit my site
Stars: ✭ 82 (-64.96%)
Mutual labels:  data-structures, tree
Data Structures
Data-Structures using C++.
Stars: ✭ 121 (-48.29%)
Mutual labels:  data-structures, hashing
Data Structures With Go
Data Structures with Go Language
Stars: ✭ 121 (-48.29%)
Mutual labels:  tree, dictionary
Data Structures
Common data structures and algorithms implemented in JavaScript
Stars: ✭ 139 (-40.6%)
Mutual labels:  data-structures, tree
Merkle Tree
Merkle Trees and Merkle Inclusion Proofs
Stars: ✭ 130 (-44.44%)
Mutual labels:  data-structures, tree

libdict

Build Status

libdict is a C library that provides the following data structures with efficient insert, lookup, and delete routines:

All data structures in this library support insert, search, and remove, and have bidirectional iterators. The sorted data structures (everything but hash tables) support near-search operations: searching for the key greater or equal to, strictly greater than, lesser or equal to, or strictly less than, a given key. The tree data structures also support the selecting the nth element; this takes linear time, except in path-reduction and weight-balanced trees, where it only takes logarithmic time.

The API and code are written with efficiency as a primary concern. For example, an insert call returns a boolean indicating whether or not the key was already present in the dictionary (i.e. whether there was an insertion or a collision), and a pointer to the location of the associated data. Thus, an insert-or-update operation can be supported with a single traversal of the data structure. In addition, almost all recursive algorithms have been rewritten to use iteration instead.

License

libdict is released under the simplified BSD license.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].