28 repositorios
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.
Este proyecto es una biblioteca curada de implementaciones de algoritmos y problemas de programación resueltos. Sirve como repositorio de referencia para programación competitiva e implementaciones de estructuras de datos, proporcionando soluciones optimizadas para una amplia gama de desafíos de codificación. La colección organiza ejemplos de código por técnica algorítmica, enfocándose específicamente en la implementación de árboles, grafos y montículos (heaps) para optimizar la complejidad temporal y espacial. Proporciona soluciones específicas por lenguaje utilizadas para tareas de codificación de alto rendimiento. El repositorio cubre un amplio conjunto de capacidades, incluyendo recorridos de grafos, programación dinámica, procesamiento de patrones de cadenas y operaciones de búsqueda binaria. También incluye implementaciones para consultas de datos en rangos, manipulación de bits y el diseño de estructuras de datos personalizadas como cachés y motores de autocompletado. La cobertura adicional incluye cálculos matemáticos y el seguimiento del rendimiento en concursos.
Implements hash map strategies to identify subarrays, anagrams, and frequency patterns via efficient key-value lookups.
Este proyecto es una biblioteca de algoritmos en C# y una colección de estructuras de datos. Sirve como referencia de ciencias de la computación proporcionando implementaciones prácticas de patrones clásicos de ordenamiento, búsqueda y recorrido de grafos. La biblioteca incluye un kit de herramientas de procesamiento de cadenas dedicado para analizar la similitud de texto, calcular distancias de edición y gestionar búsquedas basadas en prefijos. También cuenta con una implementación de teoría de grafos para modelar relaciones de red y calcular caminos más cortos. El código base cubre una amplia gama de capacidades, incluyendo la gestión de colecciones lineales y jerárquicas, manipulación y visualización de estructuras de datos de árbol, y el cálculo de secuencias numéricas matemáticas.
Implements hash tables that associate keys with values using integer index mapping and collision resolution.
node-lru-cache es un almacén de clave-valor para Node.js que implementa una caché limitada por memoria. Previene el agotamiento de la memoria limitando el número total de elementos o el tamaño total en bytes, desalojando automáticamente los elementos menos usados recientemente para mantener estos límites. El proyecto proporciona patrones de caché especializados, incluyendo duraciones de tiempo de vida (TTL) para asegurar la frescura de los datos y un mecanismo de 'stale-while-revalidate' que sirve contenido expirado mientras obtiene actualizaciones de forma asíncrona en segundo plano. También incluye herramientas de diagnóstico para monitorear aciertos, fallos y métricas de desalojo de caché a través de objetos de estado operativo y canales de diagnóstico. La implementación cubre capacidades más amplias de gestión de memoria y recuperación de datos, como la obtención automática de datos para entradas faltantes, la poda manual de elementos obsoletos y la ejecución de funciones de limpieza cuando los elementos expiran para liberar recursos externos.
Utilizes a hash map to provide constant-time retrieval of cached entries and their associated tracking nodes.
Highway es una biblioteca de C++ portátil y capa de abstracción de hardware diseñada para escribir código SIMD (Single Instruction, Multiple Data). Proporciona una interfaz unificada que mapea la lógica de datos paralelos a varios conjuntos de instrucciones de CPU, permitiendo el desarrollo de software de alto rendimiento que se ejecuta en diferentes arquitecturas de procesador sin requerir ensamblador específico de la arquitectura. El proyecto cuenta con un despachador de instrucciones dinámico que selecciona el conjunto de instrucciones de CPU más eficiente en tiempo de ejecución basado en el hardware detectado. También admite la especialización de destino estática y mecanismos extensibles para añadir nuevos destinos de hardware u operaciones SIMD personalizadas. La biblioteca cubre una amplia gama de operaciones vectoriales, incluyendo aritmética elemento a elemento, reducción de carriles (lane reduction), barajado (shuffling) y ejecución condicional enmascarada. Incluye una biblioteca matemática vectorizada, un gestor de memoria para asignación alineada y operaciones de carga-almacenamiento enmascaradas, y primitivas para criptografía acelerada por hardware. Se proporcionan herramientas para la compilación y validación automatizada de instrucciones aceleradas por hardware en múltiples arquitecturas de procesador.
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 es un lenguaje de programación tipado y compilador centrado en la seguridad, diseñado para crear contratos inteligentes que se ejecutan en la Ethereum Virtual Machine. Utiliza una sintaxis similar a Python para definir la lógica y el estado del contrato, sirviendo como objetivo para la verificación formal para permitir pruebas de corrección verificadas por máquina. El lenguaje se distingue por restricciones arquitectónicas estrictas que priorizan la previsibilidad y la seguridad. Impone grafos de llamadas acíclicos al prohibir la recursión y exige bucles acotados para garantizar la predicción estática de gas. Además, cuenta con un tipo decimal de punto fijo nativo para cálculos financieros para evitar la pérdida de precisión. El proyecto proporciona un conjunto completo de capacidades para el desarrollo de blockchain, incluyendo gestión de estado fuertemente tipada, primitivas criptográficas para la recuperación de claves públicas y guardias de reentrancia integrados. Admite la implementación de estándares de tokens de la industria, herramientas de finanzas descentralizadas y sistemas de gobernanza en cadena a través de un sistema modular de interfaces y despliegues de contratos. El compilador transforma el código fuente de alto nivel en bytecode dirigido a EVM y definiciones ABI, mientras proporciona herramientas para pruebas automatizadas de contratos y verificación de integridad de compilación.
Implements hash tables to map keys to values for efficient state storage and retrieval.
uthash es una biblioteca de estructuras de datos basada en macros para C que ofrece implementaciones de tablas hash, listas enlazadas, pilas y arreglos dinámicos mediante archivos de cabecera (header-only). Permite búsquedas basadas en claves y almacenamiento de datos organizado sin necesidad de enlazar bibliotecas externas. La biblioteca utiliza enlazado intrusivo para incrustar metadatos directamente en las estructuras definidas por el usuario mediante macros. Este enfoque permite extender estructuras in-situ, facilitando la adición de campos de hash y enlace a structs existentes sin requerir asignaciones de memoria adicionales para los nodos contenedores. El proyecto también abarca la gestión especializada de memoria y flujos de datos, incluyendo buffers circulares de tamaño fijo para flujos continuos y buffers de cadena con asignación automática de memoria. Estas utilidades facilitan el manejo de datos en entornos con recursos limitados y sistemas embebidos.
Provides a complete macro-based implementation of hash tables for key-based lookups in C.
Redka es un almacén de clave-valor respaldado por SQL que implementa una interfaz compatible con Redis. Actúa como un puente de datos relacionales, traduciendo comandos de protocolo no relacionales en consultas relacionales para proporcionar persistencia y transacciones ACID utilizando un backend de base de datos SQL. El sistema permite la introspección de datos relacionales al exponer datos internos de clave-valor como vistas SQL, permitiendo consultas y análisis directos mediante sintaxis relacional. Puede desplegarse como un servidor de red independiente o como una librería embebida dentro de una aplicación Go. El proyecto admite una variedad de estructuras de datos, incluyendo cadenas, listas, hashes, conjuntos desordenados y conjuntos ordenados. Proporciona capacidades para la gestión del ciclo de vida de las claves con metadatos de tiempo de vida (TTL), operaciones numéricas atómicas y álgebra de conjuntos. Para gestionar el rendimiento y el acceso, incluye un modo de almacenamiento en memoria y un modo de conexión de solo lectura.
Supports Redis-style hash maps for storing and manipulating field-value pairs.