28 dépôts
Data structures for efficient key-value storage and retrieval.
Distinguishing note: No existing candidates for hash map implementations.
Explore 28 awesome GitHub repositories matching data & databases · Hash Maps. Refine with filters or upvote what's useful.
Comprehensive Rust is a structured educational curriculum designed to teach the Rust programming language, focusing on its core principles of memory safety, performance, and type correctness. The project provides a comprehensive learning path for software engineers, covering the language's ownership model, borrow checking, and compile-time validation mechanisms that eliminate common memory-related errors without the need for a garbage collector. The curriculum distinguishes itself by offering specialized modules that demonstrate how to apply these safety guarantees in diverse, high-performanc
Stores key-value pairs in efficient lookup tables to manage data collections with fast access times.
This project is a comprehensive collection of common computer science algorithms and data structures implemented in Swift. It serves as an educational reference and library for studying computational complexity, algorithmic logic, and data structure engineering through practical code examples. The repository provides a wide suite of data structure implementations, including various types of linked lists, heaps, hash tables, and an extensive range of hierarchical trees such as Red-Black, B-Tree, and Splay trees. It also covers diverse sorting and searching techniques, from basic bubble sort to
Implements hash-based storage systems that map keys to values for fast data retrieval.
Garnet is a multi-threaded in-memory database and distributed key-value store. It functions as a high-performance remote cache store that implements the RESP wire protocol to maintain compatibility with existing Redis clients and libraries. The project is distinguished by a shared-memory architecture that enables parallel request processing across multiple cores for sub-millisecond latency. It features a tiered storage system that automatically offloads colder data from system memory to SSD or cloud storage layers, and includes a specialized vector search database for high-dimensional similar
Stores collections of field-value pairs and supports atomic increments and range retrievals.
phpredis is a C-based native extension that bridges PHP applications with Redis servers for high-performance data storage and retrieval. It serves as an interface for manipulating strings, hashes, lists, sets, and sorted sets while providing a direct path for executing Redis commands and server-side scripts. The extension provides comprehensive support for distributed environments and high availability. It interfaces with Redis Cluster to distribute data across multiple nodes using hash slots and manages Redis Sentinel for service discovery and automatic failover. It also enables shared state
Provides high-performance hash map operations for storing and retrieving fields within a single key.
Redis is a high-performance in-memory key-value store that functions as a distributed cache, message broker, and NoSQL database. It provides sub-millisecond read and write access to data stored in RAM and can operate as a vector database for indexing high-dimensional embeddings. The system supports a wide range of data storage and synchronization primitives, including the management of strings, hashes, lists, sets, and JSON documents. It enables real-time data operations through atomic transactions, hybrid persistence using snapshots and append-only logs, and high-availability configurations
Provides efficient key-value storage and retrieval using hash map data structures.
This project is a comprehensive library of practical Python code examples and patterns. It provides a collection of scripts and snippets designed to demonstrate a wide range of programming tasks, from basic syntax to advanced implementation patterns. The repository focuses on several core domains, including the implementation of concurrency and multithreading examples, data analysis snippets for cleaning and manipulating tabular data, and various data visualization examples. It also covers automation scripts for file system management and a variety of general programming patterns. Additional
Utilizes hash values to treat different immutable types with the same value as identical mapping keys.
The 1BRC (One Billion Row Challenge) is a Java performance benchmarking exercise that processes one billion temperature records from a text file to compute the minimum, mean, and maximum temperature per weather station. At its core, it is a large-scale data aggregation challenge designed to test how efficiently a Java program can parse and aggregate structured data from a plain text file, serving as both a programming exercise and a benchmark for Java performance optimization. The project distinguishes itself through a collection of performance-oriented architectural patterns for high-through
Uses a hand-optimised hash map with primitive long keys and int values to minimise object overhead and garbage collection.
This project is a computer science educational resource and library providing implementations of data structures and algorithms in JavaScript. It serves as an algorithm implementation reference and a toolkit for building foundational data containers, including a collection of sorting algorithms and a guide for learning time and space complexity. The project differentiates itself by pairing class-based implementations with Big O analysis to illustrate asymptotic complexity. It includes a non-linear data structure toolkit featuring self-balancing trees, hash maps, and graphs, alongside comparis
Implements hash maps for efficient key-value storage with average constant-time lookups.
LogicStack-LeetCode is a curated repository of solved algorithm problems and data structure implementations, primarily drawn from the LeetCode platform. Its core identity is a structured collection of solutions designed to support technical interview preparation and competitive programming practice, with each solution accompanied by complexity analyses to help engineers understand performance trade-offs. The repository distinguishes itself through its breadth of coverage across fundamental algorithmic patterns and data structures. It includes implementations for array manipulation, string pro
Provides implementations of hash maps for efficient key-value storage and retrieval.
language-ext is a functional programming framework for C# that provides a suite of immutable data structures and monadic types. It enables the implementation of pure functional programming patterns, utilizing containers to manage side effects, optional values, and error handling. The library is distinguished by its advanced concurrency and state management tools, including a software transactional memory system and lock-free atomic references. It also provides specialized utilities for distributed systems, such as vector clocks for causality tracking and deterministic data conflict resolution
Provides persistent hash maps and sorted maps for immutable key-value storage.
Boltons is a comprehensive utility toolkit and extension of the Python standard library. It provides a collection of reusable recipes and specialized data structures, system utilities, and helper libraries designed to support common programming tasks across various domains. The project is distinguished by a standard-library-only dependency model, ensuring maximum portability with zero external dependencies. It provides advanced implementations for data structures, such as immutable mappings and priority queues, alongside recursive data transformation tools for reshaping complex nested diction
Implements frozen dictionaries that prevent the modification of keys and values after creation.
This repository is a collection of practical code snippets and implementation patterns for Flutter and Dart. It serves as a comprehensive guide and reference for asynchronous programming, state management patterns, and UI component design. The project provides advanced language reference material covering generics, reflection, factory constructors, and null-aware operators. It also includes specific utilities for manipulating Dart collections, such as helper methods for transforming and filtering maps, lists, and iterables. The coverage extends to high-level capabilities including asynchrono
Implements read-only maps to ensure state consistency within the application.
Ce projet est une bibliothèque curatée d'implémentations d'algorithmes et de problèmes de programmation résolus. Il sert de dépôt de référence pour la programmation compétitive et les implémentations de structures de données, fournissant des solutions optimisées pour un large éventail de défis de codage. La collection organise les exemples de code par technique algorithmique, en se concentrant spécifiquement sur l'implémentation d'arbres, de graphes et de tas pour optimiser la complexité temporelle et spatiale. Elle fournit des solutions spécifiques au langage utilisées pour des tâches de codage haute performance. Le dépôt couvre un large ensemble de capacités, incluant les parcours de graphes, la programmation dynamique, le traitement de motifs de chaînes et les opérations de recherche binaire. Il inclut également des implémentations pour l'interrogation de données sur plage, la manipulation de bits et la conception de structures de données personnalisées telles que des caches et des moteurs d'autocomplétion. Une couverture supplémentaire inclut les calculs mathématiques et le suivi des performances en concours.
Implements hash map strategies to identify subarrays, anagrams, and frequency patterns via efficient key-value lookups.
Ce projet est une bibliothèque d'algorithmes C# et une collection de structures de données. Il sert de référence en informatique fournissant des implémentations pratiques de modèles classiques de tri, de recherche et de parcours de graphes. La bibliothèque inclut une boîte à outils dédiée au traitement des chaînes pour analyser la similarité de texte, calculer les distances d'édition et gérer les recherches basées sur les préfixes. Elle propose également une implémentation de la théorie des graphes pour modéliser les relations réseau et calculer les chemins les plus courts. La base de code couvre un large éventail de capacités, incluant la gestion de collections linéaires et hiérarchiques, la manipulation et la visualisation de structures de données arborescentes, et le calcul de séquences numériques mathématiques.
Implements hash tables that associate keys with values using integer index mapping and collision resolution.
node-lru-cache est un magasin clé-valeur pour Node.js qui implémente un cache à mémoire limitée. Il prévient l'épuisement de la mémoire en plafonnant le nombre total d'éléments ou la taille totale en octets, expulsant automatiquement les éléments les moins récemment utilisés pour maintenir ces limites. Le projet fournit des modèles de mise en cache spécialisés, incluant des durées de vie (TTL) pour assurer la fraîcheur des données et un mécanisme « stale-while-revalidate » qui sert du contenu expiré tout en récupérant les mises à jour de manière asynchrone en arrière-plan. Il inclut également des outils de diagnostic pour surveiller les hits, les misses et les métriques d'expulsion du cache via des objets d'état opérationnel et des canaux de diagnostic. L'implémentation couvre des capacités plus larges de gestion de la mémoire et de récupération de données, telles que la récupération automatique de données pour les entrées manquantes, l'élagage manuel des éléments obsolètes et l'exécution de fonctions de nettoyage lorsque les éléments expirent pour libérer des ressources externes.
Utilizes a hash map to provide constant-time retrieval of cached entries and their associated tracking nodes.
Highway est une bibliothèque C++ portable et une couche d'abstraction matérielle conçue pour écrire du code SIMD (Single Instruction Multiple Data). Elle fournit une interface unifiée qui mappe la logique de parallélisme de données vers divers jeux d'instructions CPU, permettant le développement de logiciels haute performance qui s'exécutent sur différentes architectures de processeurs sans nécessiter d'assembleur spécifique à l'architecture. Le projet dispose d'un répartiteur d'instructions dynamique qui sélectionne le jeu d'instructions CPU le plus efficace à l'exécution en fonction du matériel détecté. Il prend également en charge la spécialisation de cible statique et des mécanismes extensibles pour ajouter de nouvelles cibles matérielles ou des opérations SIMD personnalisées. La bibliothèque couvre un large éventail d'opérations vectorielles, incluant l'arithmétique élément par élément, la réduction de voie, le mélange (shuffling) et l'exécution conditionnelle masquée. Elle inclut une bibliothèque mathématique vectorisée, un gestionnaire de mémoire pour l'allocation alignée et les opérations de chargement-stockage masquées, ainsi que des primitives pour la cryptographie accélérée par matériel. Des outils sont fournis pour la compilation et la validation automatisées des instructions accélérées par matériel sur plusieurs architectures de processeurs.
Implements fast hash tables and cuckoo hashes using optimized data structures for high-performance lookups.
This is a collection of classical algorithms and data structures implemented as a header-only C++ library. It provides a suite of tools for general algorithm implementation, including data structure management, graph theory analysis, and string processing. The library is distinguished by its specialized toolkits for cryptographic hashing and encoding, featuring implementations of MD5, SHA-1, and Base64. It also includes advanced capabilities for high-performance string processing via suffix trees and arrays, as well as computational number theory for primality testing and arbitrary-precision
Implements a complete hash table storage structure using separate chaining to resolve collisions.
Vyper est un langage de programmation typé et un compilateur axé sur la sécurité, conçu pour créer des contrats intelligents qui s'exécutent sur l'Ethereum Virtual Machine. Il utilise une syntaxe Pythonique pour définir la logique et l'état du contrat, servant de cible pour la vérification formelle afin de permettre des preuves de correction vérifiées par machine. Le langage se distingue par des contraintes architecturales strictes qui privilégient la prévisibilité et la sécurité. Il impose des graphes d'appels acycliques en interdisant la récursion et impose des boucles bornées pour assurer une prédiction statique du gaz. De plus, il dispose d'un type décimal à virgule fixe natif pour les calculs financiers afin d'éviter la perte de précision. Le projet fournit un ensemble complet de capacités pour le développement blockchain, y compris la gestion d'état fortement typée, des primitives cryptographiques pour la récupération de clés publiques et des protections intégrées contre la réentrance. Il prend en charge l'implémentation de normes de jetons industriels, d'outils de finance décentralisée et de systèmes de gouvernance en chaîne via un système modulaire d'interfaces et de déploiements de contrats. Le compilateur transforme le code source de haut niveau en bytecode ciblant l'EVM et en définitions ABI, tout en fournissant des outils pour les tests de contrats automatisés et la vérification de l'intégrité de la construction.
Implements hash tables to map keys to values for efficient state storage and retrieval.
uthash est une bibliothèque de structures de données basée sur des macros pour C, offrant des implémentations header-only de tables de hachage, listes chaînées, piles et tableaux dynamiques. Elle permet des recherches par clé et un stockage de données organisé sans nécessiter l'édition de liens avec des bibliothèques externes. La bibliothèque utilise le chaînage intrusif pour intégrer des métadonnées directement dans les structures définies par l'utilisateur via des macros. Cette approche permet l'extension de structures in-place, autorisant l'ajout de champs de hachage et de liaison aux structs existantes sans allocations mémoire séparées pour les nœuds conteneurs. Le projet couvre également la gestion spécialisée de la mémoire et des flux de données, incluant des buffers circulaires à taille fixe pour les flux de données continus et des buffers de chaînes avec allocation mémoire automatique. Ces utilitaires facilitent la manipulation de données dans des environnements aux ressources limitées et des systèmes embarqués.
Provides a complete macro-based implementation of hash tables for key-based lookups in C.
Redka is a SQL-backed key-value store that implements a Redis-compatible interface. It acts as a relational data bridge, translating non-relational protocol commands into relational queries to provide persistence and ACID transactions using a SQL database backend. The system allows for relational data introspection by exposing internal key-value data as SQL views, enabling direct querying and analysis via relational syntax. It can be deployed as a standalone network server or as an embedded library within a Go application. The project supports a variety of data structures, including strings,
Supports Redis-style hash maps for storing and manipulating field-value pairs.