26 repositorios
Techniques for solving complex problems by breaking them into simpler subproblems.
Distinguishing note: No existing candidates for dynamic programming.
Explore 26 awesome GitHub repositories matching software engineering & architecture · Dynamic Programming. 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
The project calculates the number of valid sequences using dynamic programming with memoization.
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 the minimum coin change problem using greedy and dynamic programming approaches.
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
Provides algorithms for counting partitions and arrangements in combinatorial problems.
This project is a machine learning algorithm reference and implementation guide that provides theoretical foundations and code for supervised learning, deep learning, and natural language processing. It serves as a comprehensive toolkit for implementing predictive models and a technical reference for algorithm engineering. The project focuses on ensemble learning frameworks, including the construction of decision trees, random forests, and gradient boosting models. It also functions as a probabilistic graphical model library and an NLP algorithm reference, with specific implementations for se
Implements the transformation of primal quadratic programming problems into dual forms to simplify computations and integrate kernel functions.
This project is an educational resource designed to teach the mathematical foundations and core algorithms of reinforcement learning. It provides a structured academic curriculum that combines textbooks, lecture materials, and practical code examples to guide learners through the principles of Markov decision processes and reinforcement learning theory. The repository distinguishes itself by integrating a grid-based simulation framework that allows users to test algorithms within custom environments. This environment supports the analysis of agent performance by rendering state values, polici
Computes optimal value functions by iteratively solving the Bellman equation for policy evaluation.
Portmaster is a host-based network firewall and privacy tool that monitors and controls all system network traffic. It operates by intercepting data packets at the operating system level, allowing it to observe and manage every connection made by local software in real time. The software distinguishes itself through process-aware connection mapping, which correlates active network sockets with specific local applications to provide visibility into data transfers. It utilizes a user-space policy engine to enforce granular security rules, enabling users to restrict internet access, block specif
Evaluates connection requests against defined security rules to determine whether to permit or block traffic based on application identity.
CrowdSec is a collaborative, distributed security engine designed for threat detection and infrastructure protection. It functions as an intrusion detection system that parses logs and network traffic to identify malicious patterns, utilizing a bucket-based threshold detection model to aggregate events and trigger alerts. The platform is built on a modular architecture that includes a centralized local API server for managing security signals and a relational database for persistent storage of remediation decisions. What distinguishes the project is its decoupled enforcement model, which offl
Evaluates non-blocking security policies in the background to analyze traffic patterns without introducing latency.
This project is a reference library of Java implementations for algorithmic coding challenges and data structure patterns. It serves as a study guide for technical interview preparation, providing a curated collection of LeetCode solutions organized by difficulty and algorithmic technique. The collection includes a mapping system that associates specific algorithm problems with the companies that frequently use them in technical interviews. The repository covers a wide range of capability areas, including tree algorithms for hierarchy construction and verification, string processing for sequ
Implements combinatorial counting techniques using dynamic programming to find distinct ways to reach target states.
Vowpal Wabbit is an open-source machine learning system designed for online learning, where models update incrementally from streaming data without requiring full retraining. It provides a reduction-based learning framework that composes complex tasks from simpler algorithms, and includes a feature hashing trick that maps unbounded feature names into a fixed-size vector space to keep memory usage constant regardless of dataset size. The system supports distributed training across a cluster using an allreduce protocol for synchronized updates, and offers an active learning query strategy that s
Estimates how candidate policies would perform using logged data without live deployment.
This project is a collection of reference implementations for algorithms, mathematics, cryptography, compression, and machine learning written in C#. It serves as an educational library providing standard implementations of sorting, searching, and graph theory algorithms. The repository covers a wide range of computational domains, including combinatorial optimization for constraint satisfaction and scheduling, as well as symmetric and classical cryptographic ciphers. It also provides reference code for lossless data compression techniques and fundamental machine learning primitives such as r
Provides algorithmic solutions for complex optimization problems using dynamic programming and greedy strategies.
Penrose is a compiler that transforms structured mathematical notation into optimized SVG diagrams. It uses a three-stage pipeline of separate domain, substance, and style files to define mathematical objects, relationships, and visual presentation, then solves continuous optimization problems with user-defined spatial constraints and objectives to automatically arrange diagram elements. The system separates diagram content from visual style using distinct declarative languages, and provides a typed domain language with subtype hierarchies for mathematical objects. It supports embedding compi
Sets up a problem with constraints and an objective, then runs the optimizer until convergence or a stopping condition is met.
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
Applies dynamic programming on tree structures to compute optimal path sums and subtree properties.
CVXPY is a Python-embedded domain-specific language for modeling and solving convex optimization problems using natural mathematical syntax. It is built on a disciplined convex programming framework that automatically enforces convexity rules, ensuring that problems formulated by the user are valid for convex solvers. The project also functions as a multi-solver optimization interface, abstracting away backend details and dispatching problems to specialized solvers like ECOS, SCS, and Gurobi without manual configuration. Beyond standard convex optimization, CVXPY extends its reach to geometri
Retrieves computed optimal variable values and Lagrange multipliers after solving optimization problems.
Este proyecto es una colección integral de librerías y toolkits de C++ que proporcionan implementaciones de referencia para estructuras de datos, algoritmos de grafos y lógica de bits. Sirve como una referencia de algoritmos en C++ que contiene más de 180 problemas de programación resueltos y un toolkit especializado para programación competitiva. El repositorio se distingue por sus extensas librerías de manipulación de bits de bajo nivel para comprobaciones de paridad, detección de endianness y lógica basada en XOR. También proporciona una amplia gama de soluciones de referencia para desafíos algorítmicos complejos que involucran backtracking, teoría de grafos y programación dinámica. La superficie de capacidades cubre organizadores de datos lineales y jerárquicos fundamentales, incluyendo listas enlazadas, pilas, colas y árboles de búsqueda binaria. Incluye un conjunto completo de algoritmos de grafos para búsqueda de caminos y árboles de expansión, varios métodos de ordenamiento y búsqueda, transformaciones de matrices y utilidades de procesamiento de cadenas. Además, cubre funciones computacionales matemáticas, compresión de datos sin pérdida y cifrados criptográficos básicos.
Provides reference implementations of dynamic programming solvers using tabular and memoization techniques.
PyPortfolioOpt is a comprehensive portfolio optimization library for Python that provides a full suite of methods for constructing and analyzing investment portfolios. At its core, the library implements mean-variance optimization, the Black-Litterman Bayesian model, and Hierarchical Risk Parity, giving users multiple approaches to asset allocation. It includes a complete covariance estimation toolkit with interchangeable estimators such as sample, exponential, shrinkage, and minimum-covariance-determinant methods, along with expected return estimation using historical mean, exponential weight
Allows inheriting from base optimizer classes to implement custom optimization algorithms while reusing built-in utilities.
Esta librería proporciona un framework para definir máquinas de estados finitos dentro de clases Ruby para gestionar ciclos de vida de objetos complejos. Funciona como un motor de flujo de trabajo declarativo, permitiendo a los desarrolladores modelar estados, eventos y transiciones de objetos a través de un lenguaje específico de dominio legible. Al integrarse directamente con las capas de persistencia de base de datos, el framework asegura que los cambios de estado se sincronicen con los registros de almacenamiento mientras mantiene la integridad de los datos mediante la gestión de transacciones y el bloqueo de filas. La librería se distingue por imponer reglas de negocio estrictas a través de guardas de transición condicionales y prevenir la modificación directa del estado, asegurando que todos los cambios en el ciclo de vida ocurran exclusivamente a través de eventos definidos. Soporta múltiples máquinas de estados independientes dentro de una sola clase al mapearlas a campos de base de datos distintos, proporcionando un control de ciclo de vida aislado. Además, genera automáticamente métodos de instancia dinámicos para consultar estados y disparar eventos, junto con ámbitos de consulta de base de datos que simplifican el filtrado de objetos según su estado actual. Más allá de la gestión central del ciclo de vida, el framework incluye utilidades para la localización de nombres de estado para soportar interfaces multilingües y proporciona hooks para ejecutar lógica personalizada antes o después de las transiciones. También ofrece matchers de prueba especializados para verificar configuraciones de máquinas de estados y lógica de transición dentro de suites de pruebas automatizadas. El proyecto incluye herramientas para compilar código fuente y configuraciones en documentación estructurada para ayudar con la referencia del sistema.
Supports hosting multiple independent state machines within a single class by mapping them to distinct database fields.
LeetCode-Swift is a collection of algorithm solutions written in Swift, designed for coding interview preparation. Each solution is implemented as a self-contained function with no external dependencies, making it easy to run and test. The repository organizes solutions by topic and company, and every file includes time and space complexity annotations, allowing quick evaluation of algorithmic efficiency. What sets this repository apart is its flat file structure and the way solutions are tagged with the companies that asked them in interviews, enabling targeted practice. All code resides in
Implements bitmask DP to determine the first player's winning strategy in a number-picking game.
Este proyecto es una librería de máquinas de vectores de soporte (SVM) implementada en C, que proporciona un motor para tareas de clasificación y regresión. Funciona como una librería de kernel de machine learning y un validador de modelos estadísticos utilizado para categorizar puntos de datos y predecir valores numéricos continuos. La librería permite la definición de funciones de kernel personalizadas para calcular la similitud entre puntos de datos en datasets especializados. También incluye herramientas para modelado probabilístico, como la estimación de pertenencia a clases, densidad de datos y límites de distribución. Las capacidades cubren el entrenamiento de modelos para datasets multiclase, incluyendo la gestión de datos desequilibrados mediante funciones de pérdida ponderadas. El sistema proporciona flujos de trabajo para la selección de hiperparámetros y optimización de modelos utilizando contornos de precisión y validación cruzada estratificada. Se incluyen utilidades de preprocesamiento de datos para la validación de entradas y el escalado de atributos para normalizar las magnitudes de las características.
Employs Sequential Minimal Optimization to efficiently solve the quadratic programming problem during model training.
This repository is a curated guide and implementation library of coding patterns used to solve data structures and algorithms problems. It serves as a technical interview study resource, providing a comprehensive set of strategies and computational logic examples for optimizing time and space complexity. The project focuses on standardized algorithmic patterns, including sliding windows, two pointers, and dynamic programming. It features specific implementations for a wide range of challenges, such as LeetCode problem solutions and specialized techniques like cyclic sort and bitwise XOR opera
Implements dynamic programming strategies to solve complex optimization problems via memoization.
This project is a data mining algorithm library and machine learning reference implementation. It provides a collection of tools for performing classification, clustering, and association rule mining, as well as a toolkit for nature-inspired optimization. The library includes specialized utilities for graph and sequence mining, enabling the extraction of frequent subgraphs and sequential patterns. It also features a dimensionality reduction utility that uses rough set theory to remove redundant attributes from datasets. The project covers a broad range of analytical capabilities, including n
Finds optimal solutions for complex tasks using algorithmic solvers and nature-inspired techniques.