46 dépôts
Tree-based structures for storing strings with shared prefixes to enable fast retrieval.
Distinguishing note: Focuses on prefix-based storage rather than suffix-specific structures.
Explore 46 awesome GitHub repositories matching software engineering & architecture · Trie Data Structures. Refine with filters or upvote what's useful.
This project is a curated educational resource and solution repository for algorithmic challenges, specifically focused on LeetCode problems. It serves as a technical reference for common data structures and algorithmic patterns, providing verified code implementations across multiple programming languages alongside detailed logic and complexity analysis. The repository functions as a comprehensive study guide for competitive programming and technical interview preparation. It includes specialized learning tools such as an Anki flashcard dataset for spaced repetition and a browser extension t
Verifies the existence of specific words in a prefix tree by traversing nodes to the end marker.
This project is a comprehensive technical knowledge base and study guide focused on data structures, algorithms, and computer science fundamentals. It provides a curated collection of tutorials and educational resources designed to support technical growth and academic learning. The repository distinguishes itself through a heavy emphasis on visual learning, utilizing mind maps, diagrams, and illustrated breakdowns to explain complex algorithmic logic. It further supports career readiness by providing a repository of company-specific interview questions and real-world candidate experiences.
Offers guides on implementing prefix-based search trees for efficient string retrieval and key lookups.
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
Provides the traversal logic required to lookup and verify the existence of keys within a trie.
This project is a comprehensive, community-maintained knowledge base and toolkit designed for competitive programming. It serves as a centralized repository for algorithmic theory, data structures, and mathematical techniques, providing a structured reference for informatics and collegiate programming competitions. The project distinguishes itself by integrating educational content with a robust suite of automation utilities. It provides a complete workflow for competitive programming, including tools for automated test case generation, solution verification, and direct interaction with onlin
Supports efficient trie structure merging for advanced string processing.
This project is an international phone number library providing tools for parsing, formatting, and validating phone numbers across multiple programming languages. It functions as a parsing utility, a formatting engine, and a validation tool to ensure phone number strings are transformed into structured objects and standardized display formats. The library includes a telecom metadata resolver to retrieve geographical, carrier, and timezone information associated with specific number ranges. It differentiates itself by identifying phone number types, such as mobile, fixed-line, or VoIP, and cal
Uses prefix-based trie structures to optimize the search and matching of telecommunications carriers.
This project is an international phone number library used for parsing, formatting, and validating phone numbers based on the E.164 standard. It provides a validation engine and parser to convert raw strings into structured objects and verify if numbers conform to regional numbering rules. The library includes a metadata provider that maps phone numbers to geographic locations, time zones, and network carriers. It can distinguish between line types, such as fixed-line or mobile, to verify SMS compatibility and identify original network operators. Additional capabilities include extracting ph
Provides trie-based lookup tables to map phone number prefixes to their respective telecommunications carriers.
This project is a comprehensive technical interview preparation resource and computer science interview guide. It serves as an educational reference for developers to study core software engineering fundamentals and common coding patterns required for employment screenings. The repository provides detailed guides and references covering data structures and algorithms, networking and security, operating systems, and web development. It specifically focuses on the implementation and complexity analysis of sorting, searching, and graph algorithms. The material encompasses a wide breadth of comp
Explains the use of tree-based structures for prefix-based string storage and retrieval.
Outlines is a library designed to ensure machine-readable output from generative models by applying programmatic constraints during the token sampling process. It functions as a toolkit for forcing large language models to generate text that strictly adheres to JSON schemas, regular expressions, and formal grammars, enabling the integration of model responses into existing software systems. The library distinguishes itself by integrating formal language rules directly into the sampling loop. It achieves this by converting regular expressions into deterministic finite automata and utilizing lo
Uses a prefix tree of the vocabulary to quickly identify and mask tokens that do not match the required output structure.
SentencePiece is a text segmentation engine and tokenization library designed for machine learning workflows. It provides a comprehensive toolkit for transforming raw text into subword units or numerical identifiers, enabling consistent data representation for neural network training and inference. The library supports the training of segmentation models from raw text, allowing for the creation of custom vocabularies tailored to specific domain requirements. The project distinguishes itself through its byte-level encoding and fallback mechanisms, which ensure that every input can be represent
Uses tree-based structures for storing strings with shared prefixes to enable fast retrieval during encoding.
yargs is a command-line interface framework and argument parser for Node.js. It translates raw command-line strings into structured JavaScript objects, providing a toolkit for building terminal applications with nested sub-commands, dedicated handlers, and a structured user interface. The framework distinguishes itself through automated help text generation, which constructs formatted usage menus and instructions based on registered metadata. It also provides shell completion generation for Bash and Zsh and uses string-distance algorithms to offer typo correction suggestions when invalid inpu
Recommends the closest matching command when a typo is detected using Levenshtein or similar distance algorithms.
Stylelint est un outil d'analyse de code statique et un linter pour CSS et les langages de type style. Il identifie les erreurs, applique les conventions de codage et fonctionne comme un plugin PostCSS pour valider les feuilles de style pendant les pipelines de construction. Le projet se distingue par son support pour les syntaxes non standard, notamment l'analyse de préprocesseur pour SCSS et Less, et la capacité d'extraire et de linter les styles intégrés à partir de JavaScript, HTML et de littéraux de modèle. Il dispose d'un système de correction automatisé qui corrige par programme les violations de style réparables pour assurer la cohérence. Le système fournit une architecture de plugin pour créer des règles, des syntaxes et des formateurs personnalisés. Il couvre un large éventail de capacités d'assurance qualité, notamment la prévention de la syntaxe obsolète, la validation de la spécificité des sélecteurs et l'application de modèles de nommage et de conventions stylistiques. La configuration est gérée par une logique de fusion en cascade qui prend en charge les préréglages partageables et les remplacements spécifiques aux fichiers. L'outil est accessible via une interface en ligne de commande, une API programmatique et diverses intégrations d'éditeur.
Deeply merges global configurations with file-specific overrides to create a final resolved settings tree.
This project is a comprehensive library of reference implementations for fundamental data structures and algorithms, designed to support technical interview preparation and software engineering assessments. It provides a structured collection of computational techniques for solving complex problems involving arrays, strings, graphs, trees, and mathematical analysis. The library distinguishes itself by offering specialized implementations for advanced topics, including concurrent programming patterns and geometric algorithms. It features thread-safe primitives for managing shared state and tas
Manages prefix tree operations including insertion, search, and deletion for efficient string storage.
Orama is a search engine and vector database that provides full-text indexing, geospatial calculations, and semantic vector storage. It functions as an LLM retrieval engine designed to provide grounded context to language models for conversational interfaces. The project implements hybrid search by combining dense vector embeddings with inverted keyword indices to retrieve documents based on both semantic meaning and exact text matches. It utilizes a WebAssembly module to execute search logic across different JavaScript environments and platforms. The system covers a broad range of retrieval
Uses prefix trees and edit distance algorithms to find documents despite spelling errors.
Ce projet est une implémentation de Protocol Buffers pour Go, fournissant un framework de sérialisation binaire pour convertir des structures de données natives en un format binaire compact, optimisé pour la transmission réseau et le stockage. Il fonctionne comme un générateur de liaisons de langage, utilisant un plugin de compilation pour créer du code source Go à partir de définitions de protocol buffer neutres. L'implémentation inclut un mappeur de données JSON qui transforme les messages binaires structurés en format JSON pour faciliter la compatibilité avec les services web et les API externes. Il permet également l'échange de données inter-langages en utilisant un schéma commun pour partager des structures de données entre différents langages de programmation. La bibliothèque couvre de larges capacités de sérialisation et désérialisation, incluant la manipulation de messages structurés via le clonage, la fusion et la comparaison. Elle fournit aussi des mécanismes d'inspection de messages basés sur la réflexion et la fusion récursive pour maintenir la cohérence d'état dans les systèmes distribués.
Implements recursive message merging to combine data from multiple messages by deeply traversing nested fields.
This project is an ESLint plugin and static analysis tool designed to enforce best practices, prevent bugs, and maintain code quality in React projects. It functions as a specialized JSX linter that analyzes the syntax and structure of components to detect anti-patterns and API misuse. The plugin distinguishes itself by providing deep analysis of React-specific patterns, such as detecting state race conditions, preventing nested component definitions, and identifying unstable references that cause unnecessary re-renders. It also includes security hardening rules to identify vulnerabilities li
Identifies incorrect capitalization in static properties and lifecycle methods to ensure API compatibility.
This project is a comprehensive knowledge base and study resource designed for mastering technical interviews. It provides structured guides, roadmaps, and curricula focused on data structures, algorithms, system design, and frontend engineering to help candidates prepare for software engineering screenings. The repository distinguishes itself by offering a holistic approach to professional advancement. Beyond technical drills, it includes a career development handbook covering resume optimization, salary benchmarking, and strategic negotiation coaching. It also provides detailed methodologie
Implements a Trie structure with per-node caching to accelerate prefix-based query retrieval.
Mailcheck is an email domain suggestion library and validation utility designed to identify misspelled email addresses. It functions as a string similarity tool that calculates the distance between typed domains and known correct extensions to provide automated correction suggestions. The library allows for the use of custom domain suggestion lists and the implementation of custom similarity and string distance logic. These mechanisms enable the replacement of default matching thresholds and distance algorithms with user-defined functions. The tool covers domain validation and correction thr
Identifies misspelled email domains and suggests the most likely intended domain by analyzing patterns.
go-datastructures is a collection of thread-safe and lock-free data structures designed for high-performance concurrent applications in Go. It provides a modular library of specialized algorithmic toolsets, including a lock-free collection library and an immutable data structure library. The project distinguishes itself through a suite of persistent AVL trees and hash array mapped tries that use branch-copying to preserve previous versions. It also implements non-blocking hash maps, queues, and tries that enable linearizable snapshots and concurrent updates without the use of mutual exclusion
Provides X-Fast tries to perform rapid logarithmic-time successor and predecessor searches for integers.
This is a navigation plugin for Vim that enables instant cursor movement by highlighting all possible jump targets in the visible text and assigning them unique keys. It functions as a search-to-jump extension, converting character or multi-character search patterns into single-key jumps to specific text targets. The tool supports multibyte text navigation, allowing users to search for and jump to Japanese characters using alphabetical input patterns. It also employs intelligent case matching and symbol-based mapping to link numeric digits with their corresponding keyboard shift-symbols. The
Offers jump-target highlighting for directional movement to avoid repetitive use of standard movement keys.
algs4 is a Java data structures library and algorithm reference collection designed as the source code for a standard computer science textbook curriculum. It provides a comprehensive suite of fundamental implementations for sorting, searching, and core data organization. The project serves as a graph theory framework, offering tools for representing directed and undirected graphs and performing complex traversals and pathfinding. It also includes a broad sorting algorithm suite and a specialized library of Java data structures, including stacks, queues, priority queues, and symbol tables. I
Uses tries and radix sorts for efficient string storage, sorting, and prefix-based lookups.