15 dépôts
Calculates the optimal selection of items with specific weights and values to maximize total value within capacity constraints.
Distinct from Algorithmic Problem Solving: Focuses on knapsack-specific DP, distinct from general algorithmic problem solving.
Explore 15 awesome GitHub repositories matching software engineering & architecture · Knapsack Problem Solving. Refine with filters or upvote what's useful.
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
Implements classic and advanced knapsack algorithms to solve resource allocation and optimization problems.
This project is an algorithm template library and coding interview study guide providing reusable code patterns for common data structures and algorithms. It serves as a reference for optimized strategies and a structured learning path to build proficiency in algorithmic problem solving and competitive programming. The library focuses on standardized implementations of key algorithmic patterns, including sliding windows, backtracking, dynamic programming, and binary search. It provides specific templates for managing binary search trees, searching rotated sorted arrays, and executing divide-a
Implements knapsack-specific dynamic programming to maximize value within capacity constraints.
This project is a comprehensive reference for algorithms and data structures used to solve complex computational problems in competitive programming. It serves as a technical resource for implementing advanced mathematical programming, computational geometry, and graph theory. The repository provides detailed implementation guides for diversifying algorithmic techniques, including top-down and bottom-up dynamic programming optimization, number theory, and linear algebra. It features specific guides for complex tasks such as constructing planar graphs, solving linear Diophantine equations, and
Provides algorithms for solving knapsack problems with various constraints and quantities.
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 solvers for the knapsack problem to determine the most valuable item combination within a weight limit.
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 curated hash table solutions with difficulty ratings and complexity analyses for interview preparation.
Includes a benchmark example that solves the knapsack problem using genetic operators on set-based representations.
Ce projet est une collection complète de bibliothèques et de toolkits C++ fournissant des implémentations de référence pour les structures de données, les algorithmes de graphes et la logique binaire. Il sert de référence d'algorithmes C++ contenant plus de 180 problèmes de programmation résolus et un toolkit spécialisé pour la programmation compétitive. Le dépôt se distingue par ses bibliothèques étendues de manipulation de bits de bas niveau pour les contrôles de parité, la détection d'endianness et la logique basée sur XOR. Il fournit également un large éventail de solutions de référence pour des défis algorithmiques complexes impliquant le backtracking, la théorie des graphes et la programmation dynamique. La surface de fonctionnalités couvre les organisateurs de données linéaires et hiérarchiques fondamentaux, y compris les listes chaînées, les piles, les files d'attente et les arbres de recherche binaire. Il inclut une suite complète d'algorithmes de graphes pour la recherche de chemin et les arbres couvrants, diverses méthodes de tri et de recherche, des transformations de matrices et des utilitaires de traitement de chaînes. De plus, il couvre les fonctions de calcul mathématique, la compression de données sans perte et les chiffrements cryptographiques de base.
Solves the 0-1 Knapsack problem using dynamic programming to maximize value within weight limits.
Algodeck is an open-source collection of flash cards designed for reviewing algorithms, data structures, and system design concepts, specifically curated for technical interview preparation. The project organizes knowledge into atomic question-and-answer pairs and incorporates spaced repetition scheduling to optimize long-term memory retention. The flash card catalog covers a broad range of computer science topics, including classic sorting algorithms like quicksort and mergesort, data structure operations for arrays, trees, heaps, tries, and graphs, as well as bit manipulation techniques for
Breaks a problem into overlapping subproblems and caches their results to avoid redundant computation.
CloudEvents is an open specification for describing event data in a common format across cloud platforms and services. It defines a standard structure and set of metadata attributes for events, enabling interoperability across different systems so producers and consumers can exchange events without custom translation. The specification provides a protocol-agnostic serialization framework that maps CloudEvents attributes and payloads to multiple serialization formats including JSON, Avro, and Protobuf, and defines transport bindings for mapping events onto protocols like HTTP, AMQP, Kafka, MQTT
Defines how to number events within partitions for gap, duplicate, and ordering detection.
InterviewGuide is a comprehensive technical interview preparation platform that covers the full spectrum of software engineering recruitment, from foundational computer science concepts through to offer negotiation. It provides structured learning paths across algorithms, operating systems, databases, networking, and programming languages, with a particular emphasis on C++ and Go. The platform aggregates real interview experiences and company-specific questions from major tech employers, offering candidates a searchable database of past written exam problems and detailed accounts of actual int
Presents a puzzle for planning trips to move a perishable load while consuming some for fuel.
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 logic to determine if numerical sets can be partitioned into subsets meeting specific sum requirements.
MoreLINQ is a functional programming toolkit and extension library for .NET that augments LINQ to Objects with advanced operators for sequence manipulation and analysis. It provides a set of tools for declarative data transformation, leveraging lazy evaluation and composition to handle complex object sequences. The library is distinguished by its specialized capabilities for combinatorial generation, including the production of permutations, subsets, and Cartesian products. It also provides advanced sequence joining options, such as full, left, and right outer joins, and supports complex data
Splits sequences into multiple sets based on predicates or keys.
This project is a Go algorithm implementation library and a reference for data structures. It serves as a collection of solved coding interview problems and an algorithmic pattern collection, providing a reference of over 100 common challenges implemented in Go. The library focuses on specific problem-solving strategies, including sliding windows, two pointers, and dynamic programming. It provides coded examples of standard sorting, searching, and graph traversal techniques to facilitate the study of algorithmic patterns. The repository covers a broad range of capabilities, including array a
Determines if two distinct elements in a list add up to a target value using a hashmap for constant-time lookups.
This repository serves as a comprehensive library for algorithmic problem solving, providing reference implementations for fundamental computer science challenges. It is designed as a resource for technical interview preparation and competitive programming training, focusing on the mastery of common patterns and data structures required for coding assessments. The project distinguishes itself by offering solutions that emphasize idiomatic Python usage and performance optimization. It covers a wide range of algorithmic techniques, including greedy selection, dynamic programming, graph theory,
Solves sequence-based optimization problems using dynamic programming tables.
Ce dépôt sert de ressource complète pour la programmation compétitive et la préparation aux entretiens techniques. Il fournit une collection structurée d'implémentations de code source pour des structures de données fondamentales et des problèmes algorithmiques classiques, conçus pour aider les développeurs à maîtriser les concepts fondamentaux de l'informatique et les stratégies de codage efficaces. Au-delà de la résolution de problèmes standard, le projet se distingue en intégrant des modèles de conception logicielle dans ses implémentations algorithmiques. Il démontre comment appliquer des modèles structurels et comportementaux — tels que les décorateurs, les observateurs et les singletons — pour maintenir un code propre et extensible. De plus, le dépôt couvre les modèles de programmation concurrente, offrant des exemples de gestion de pool de threads et de techniques de synchronisation pour gérer les tâches intensives en ressources. La collection inclut un large éventail de matériaux éducatifs, de l'analyse de complexité et des modèles de résolution de problèmes aux implémentations spécifiques pour le parcours de graphes, la programmation dynamique et les requêtes de plage. Ces ressources sont organisées pour aider à la fois à apprendre les techniques fondamentales et à pratiquer pour les évaluations techniques professionnelles.
Determines optimal subset sums by splitting inputs and merging results to reduce complexity.