awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

Computer science theory

Ranking updated Aug 3, 2026

For computer science theory modules, the strongest matches are packtpublishing/learning-javascript-data-structures-and-algorithms-third-edition (This repository provides an educational resource covering algorithms, data), pegasuswang/python_data_structures_and_algorithms (This repository provides educational code implementations and visual aids) and algorithm-visualizer/algorithm-visualizer (Algorithm Visualizer is a web-based educational platform that renders). wangkuiwu/datastructs_and_algorithm and kunal-kushwaha/dsa-bootcamp-java round out the shortlist. Each is ranked by relevance to your query, popularity and recent activity.

Explore the best open-source computer science theory modules, ranked by GitHub stars and active maintenance, to find the right fit.

Computer science theory

Find the best repos with AI.We'll search the best matching repositories with AI.
  • packtpublishing/learning-javascript-data-structures-and-algorithms-third-editionPacktPublishing avatar

    PacktPublishing/Learning-JavaScript-Data-Structures-and-Algorithms-Third-Edition

    1,102View on GitHub↗

    This repository serves as a comprehensive educational resource and technical reference for implementing fundamental data structures and algorithms using JavaScript. It provides a structured guide to mastering core computer science concepts, focusing on the practical application of data organization techniques and problem-solving strategies within the JavaScript ecosystem. The materials cover the implementation of essential storage patterns, including linked lists, trees, and graphs, alongside the analysis of algorithmic efficiency. By evaluating execution time and memory usage through asympto

    This repository provides an educational resource covering algorithms, data structures, and complexity analysis in JavaScript, matching part of the requested computer science curriculum despite lacking interactive visualizations or automata theory.

    JavaScriptData Structures and AlgorithmsData Structures and AlgorithmsComplexity Analysis
    View on GitHub↗1,102
  • pegasuswang/python_data_structures_and_algorithmsPegasusWang avatar

    PegasusWang/python_data_structures_and_algorithms

    3,078View on GitHub↗

    This repository is a comprehensive educational resource for mastering fundamental computer science concepts through Python. It provides a structured collection of source code implementations for classic data structures and algorithms, serving as a practical guide for building technical proficiency and preparing for coding interviews. The project distinguishes itself by integrating visual aids and diagrams that map complex execution steps to clarify how data structures function. This visual approach is paired with a rigorous automated unit testing framework, which validates the correctness of

    This repository provides educational code implementations and visual aids for fundamental computer science data structures and algorithms, though it focuses specifically on coding interview preparation rather than covering broader theory topics like automata or formal languages.

    PythonAlgorithms and Data StructuresData Structures and AlgorithmsAlgorithm Visualizations
    View on GitHub↗3,078
  • algorithm-visualizer/algorithm-visualizeralgorithm-visualizer avatar

    algorithm-visualizer/algorithm-visualizer

    48,566View on GitHub↗

    Algorithm Visualizer is a web-based platform designed to bridge the gap between abstract code and concrete behavior by rendering logical operations into interactive animations. It functions as an educational environment where users can observe the step-by-step execution of computational logic, providing a visual browser for exploring how algorithms process data and change state in real time. The platform distinguishes itself through a custom instruction set that maps algorithmic operations to graphical primitives, ensuring consistent rendering across different programming languages. By utiliz

    Algorithm Visualizer is a web-based educational platform that renders algorithms and data structures through interactive animations, though it focuses more on runtime execution than the full theoretical curriculum.

    JavaScriptAlgorithm VisualizersAlgorithm Visualization Platforms
    View on GitHub↗48,566
  • wangkuiwu/datastructs_and_algorithmwangkuiwu avatar

    wangkuiwu/datastructs_and_algorithm

    964View on GitHub↗

    This repository serves as a comprehensive library of fundamental data structures and standard algorithms implemented in C, C++, and Java. It functions as an educational resource designed to demonstrate core computer science concepts through practical code examples. The collection covers essential data organization methods, including arrays, linked lists, stacks, and queues, alongside standard computational procedures such as sorting, searching, and graph traversal. By providing these implementations across multiple languages, the project supports technical skill development and preparation fo

    This repository provides an educational library of fundamental data structures and algorithms in multiple languages, making it a solid curriculum resource for computer science theory though it focuses primarily on data structures and algorithms rather than the complete set of theory topics.

    CAlgorithms and Data StructuresAlgorithm and Data Structures
    View on GitHub↗964
  • kunal-kushwaha/dsa-bootcamp-javakunal-kushwaha avatar

    kunal-kushwaha/DSA-Bootcamp-Java

    22,105View on GitHub↗

    This repository is a structured educational resource designed for mastering data structures and algorithms using the Java programming language. It functions as a comprehensive curriculum and study roadmap, providing the materials necessary to build proficiency in core computer science fundamentals for technical interview preparation. The project organizes its content through a hierarchical directory structure that maps to a logical progression of topics. It utilizes a standardized format for coding exercises and documentation, ensuring that learners can follow a consistent syllabus while prac

    This repository provides a structured educational curriculum and study roadmap focused on algorithms and data structures in Java, fitting the visitor's need for foundational computer science course modules even though it omits broader theory topics like automata or complexity theory.

    JavaData Structures and AlgorithmsEducational Curriculum Repositories
    View on GitHub↗22,105
  • thepranaygupta/data-structures-and-algorithmsthepranaygupta avatar

    thepranaygupta/Data-Structures-and-Algorithms

    1,257View on GitHub↗

    This repository is a collection of fundamental computer science concepts and algorithmic implementations designed to serve as an educational resource. It provides a structured library of code that demonstrates universal computational patterns and data structure behaviors across multiple programming languages. The project is organized to facilitate learning through clear, readable reference implementations that prioritize pedagogical clarity over performance optimization. By grouping coding challenges according to underlying algorithmic techniques, the repository helps users identify recurring

    This repository provides a structured collection of fundamental algorithms and data structures implemented in Java to serve as a pedagogical reference for computer science concepts.

    JavaAlgorithms and Data StructuresData Structures and Algorithms
    View on GitHub↗1,257
  • thealgorithms/goTheAlgorithms avatar

    TheAlgorithms/Go

    18,085View on GitHub↗

    This repository serves as a comprehensive collection of standard computer science algorithms and data structures implemented in the Go programming language. It functions as an educational resource for developers to study idiomatic code examples and master fundamental computational logic through practical, hands-on implementation. The project provides a reference for building and utilizing essential storage containers, such as linked lists, heaps, and hash maps, to organize information efficiently. It also includes a suite of proven mathematical algorithms for performing complex numerical calc

    This repository provides a comprehensive collection of algorithms and data structures implemented in Go to serve as an educational computer science reference, though it focuses primarily on data structures and algorithms rather than a full curriculum covering automata or complexity theory.

    GoGraph Theory AlgorithmsData Structures and AlgorithmsAlgorithm and Data Structures
    View on GitHub↗18,085
  • lovebabbar/codehelp-dsa-busted-seriesloveBabbar avatar

    loveBabbar/CodeHelp-DSA-Busted-Series

    3,742View on GitHub↗

    This project is a computer science education resource and data structures and algorithms implementation library. It provides a structured collection of solved programming exercises and logic templates designed for educational study and technical interview preparation. The repository functions as an algorithmic pattern reference and study guide, offering a curated set of standard implementations used in software engineering coding assessments. It focuses on the practical application of core programming concepts to help students understand how to organize data and solve complex computational pr

    This repository provides a curated collection of data structures and algorithms implementations designed for educational study, making it a relevant resource for learning core computer science concepts despite missing some theoretical topics like automata or graph theory.

    C++Data Structures and AlgorithmsData Structures
    View on GitHub↗3,742
  • algorithmzuo/algorithm-journeyalgorithmzuo avatar

    algorithmzuo/algorithm-journey

    2,954View on GitHub↗

    This project is an algorithm learning platform and computer science educational resource. It serves as a technical interview study guide, providing structured lessons on data structures and sorting methods. The site is a markdown-based static site that converts technical documentation and algorithmic explanations into static HTML pages. It functions as a system for markdown content publishing to deliver educational material. The platform covers algorithm complexity analysis, problem solving workflows, and general computer science education. It utilizes a component-based UI structure with fil

    This repository provides structured lessons and study guides for algorithms, data structures, and complexity analysis, serving as an educational resource for computer science theory though it lacks interactive visualizations.

    JavaAlgorithms and Data Structures
    View on GitHub↗2,954
  • doocs/leetcodedoocs avatar

    doocs/leetcode

    36,161View on GitHub↗

    This project is a comprehensive algorithmic learning repository and competitive programming archive designed to support technical interview preparation and software engineering skill development. It provides a structured collection of verified solutions and implementation patterns, enabling developers to master fundamental computer science concepts through systematic practice and study. The repository distinguishes itself through a solution-centric structure that organizes source code by problem category, algorithm type, and data structure. By mapping specific coding challenges to recurring a

    This repository provides a structured collection of algorithmic learning materials and data structure implementations that serve as practical educational resources for computer science theory, though it focuses more on interview coding problems than theoretical course modules.

    JavaGraph Theory AlgorithmsFundamental Algorithms
    View on GitHub↗36,161
  • wangzheng0822/algowangzheng0822 avatar

    wangzheng0822/algo

    23,159View on GitHub↗

    This project is a data structures and algorithms library providing a collection of fifty standard code implementations for managing data and solving common computational problems. It serves as an algorithm implementation reference and study resource for educational use. The codebase covers graph theory implementations for modeling networks and performing searches, as well as string pattern matching libraries for the retrieval of character sequences. It includes a collection of hierarchical data structures, such as binary search trees and priority heaps, and provides optimized solutions for dy

    This repository provides a collection of standard data structures and algorithmic reference implementations with a focus on graph theory and foundational concepts, making it a useful study resource for educational use despite lacking automata and complexity theory modules.

    PythonAlgorithms and Data StructuresGraph Theory Algorithms
    View on GitHub↗23,159
  • bmaslakov/kotlin-algorithm-clubbmaslakov avatar

    bmaslakov/kotlin-algorithm-club

    929View on GitHub↗

    This project is a comprehensive library of fundamental computer science algorithms and data structures implemented in Kotlin. It serves as a toolkit for software engineering proficiency, providing a collection of standard computational techniques designed to operate on any data type through the use of language-level generics. The library distinguishes itself by emphasizing educational clarity and type-safe implementation. It utilizes interface-based abstractions to decouple algorithmic logic from specific data structures, while employing recursive problem decomposition and immutable state pat

    This repository provides a comprehensive library of fundamental algorithms and data structures implemented in Kotlin with a strong focus on educational clarity, making it a valuable reference for core computer science theory topics even though it lacks visual or automata modules.

    KotlinAlgorithms and Data Structures
    View on GitHub↗929
  • omonimus1/competitive-programmingomonimus1 avatar

    omonimus1/competitive-programming

    978View on GitHub↗

    This repository serves as a comprehensive resource for competitive programming and technical interview preparation. It provides a structured collection of source code implementations for fundamental data structures and classic algorithmic problems, designed to help developers master core computer science concepts and efficient coding strategies. Beyond standard problem-solving, the project distinguishes itself by integrating software design patterns into its algorithmic implementations. It demonstrates how to apply structural and behavioral patterns—such as decorators, observers, and singleto

    This repository provides a collection of fundamental algorithms and data structures implemented in code, making it a useful reference for competitive programming though it lacks interactive visualizations and a formal theoretical curriculum.

    C++Algorithms and Data StructuresData Structures and Algorithms
    View on GitHub↗978
  • chefyuan/algorithm-basechefyuan avatar

    chefyuan/algorithm-base

    10,702View on GitHub↗

    algorithm-base is an educational library and study guide designed for simulating algorithms and studying data structures. It functions as an execution visualizer that renders step-by-step state changes and pointer updates through animated simulations to illustrate how data movement works. The project distinguishes itself by mapping conceptual logic directly to multi-language source code implementations. It utilizes a comparative analysis framework to evaluate different algorithmic strategies based on stability, time complexity, and space complexity, while organizing problems by underlying mec

    chefyuan/algorithm-base is an educational library and study guide that provides algorithm simulations, data structure implementations, and complexity analysis, fitting the required curriculum focus on algorithms and data structures.

    Algorithm VisualizersAlgorithm and Data Structure GuidesAlgorithm Visualizations
    View on GitHub↗10,702
  • trekhleb/javascript-algorithmstrekhleb avatar

    trekhleb/javascript-algorithms

    196,089View on GitHub↗

    This repository is a comprehensive collection of data structures and algorithms implemented in JavaScript, designed primarily as an educational resource for computer science study and technical interview preparation. It provides modular implementations of fundamental programming concepts, allowing developers to explore algorithmic logic and data organization through self-contained, verifiable code examples. The library distinguishes itself by pairing every implementation with formal Big O notation, providing predictable insights into time and space scaling requirements. Each algorithm is stru

    This repository provides a modular educational collection of data structures, algorithms, and complexity analysis in JavaScript, though it focuses primarily on programming rather than a full computer science theory curriculum.

    JavaScriptComplexity AnalysisData Structures And Algorithms
    View on GitHub↗196,089
  • kodecocodes/swift-algorithm-clubkodecocodes avatar

    kodecocodes/swift-algorithm-club

    29,099View on GitHub↗

    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

    This project provides a comprehensive library of algorithms and data structures implemented in Swift, serving as a practical reference for foundational computer science theory topics, though it lacks broader theoretical areas like automata or formal languages.

    SwiftAlgorithms and Data StructuresAlgorithm Complexity AnalysesGraph Data Structures
    View on GitHub↗29,099
  • labuladong/fucking-algorithmlabuladong avatar

    labuladong/fucking-algorithm

    134,160View on GitHub↗

    This project is a comprehensive educational platform designed to facilitate the mastery of computer science algorithms and data structures. It provides a structured learning curriculum, a library of practice problems, and an integrated toolkit that supports both academic study and competitive programming preparation. By combining theoretical roadmaps with practical implementation exercises, the system enables users to build a deep understanding of core computational concepts. The platform distinguishes itself through its focus on integrated learning and visual clarity. It offers AI-powered gu

    This project serves as an educational curriculum and resource focused on computer science algorithms and data structures, though it centers primarily on practical coding exercises and interview preparation rather than covering the full spectrum of theoretical computer science topics.

    MarkdownAlgorithm and Data Structures
    View on GitHub↗134,160
  • amejiarosario/dsa.js-data-structures-algorithms-javascriptamejiarosario avatar

    amejiarosario/dsa.js-data-structures-algorithms-javascript

    7,768View on GitHub↗

    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

    This repository is a computer science educational library providing JavaScript implementations of data structures and algorithms with Big O analysis, aligning closely with several fundamental theory topics.

    JavaScriptComplexity Analysis
    View on GitHub↗7,768
  • geekxh/hello-algorithmgeekxh avatar

    geekxh/hello-algorithm

    36,074View on GitHub↗

    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.

    This repository provides a comprehensive educational study guide with tutorials, mind maps, and illustrated breakdowns covering algorithms, data structures, and computer science fundamentals, though it lacks dedicated coverage of formal automata and computational complexity theory.

    JavaGraph Data Structures
    View on GitHub↗36,074
  • krahets/hello-algokrahets avatar

    krahets/hello-algo

    127,271View on GitHub↗

    This project is an educational resource and reference library designed to teach fundamental data structures and algorithmic problem-solving. It provides a structured pedagogical framework that organizes complex technical concepts into a logical progression, helping learners understand how data is organized, stored, and processed to solve computational problems efficiently. The repository distinguishes itself through a multi-language codebase that maintains parallel, consistent implementations of core algorithms and data structures across various programming languages. It bridges the gap betwe

    This project serves as an educational reference library focused on fundamental algorithms and data structures with visual learning aids, though it does not cover automata or computational complexity theory.

    JavaData Structures
    View on GitHub↗127,271
  • bootdotdev/curriculumbootdotdev avatar

    bootdotdev/curriculum

    3,415View on GitHub↗

    This project is an interactive programming curriculum and educational system designed to teach computer science and software engineering. It provides a structured set of courses and professional roadmaps focused on backend engineering, DevOps, and systems fundamentals. The platform is distinguished by an AI-powered coding tutor that provides Socratic guidance and contextual hints to help students find solutions independently. It features a browser-based code sandbox using WebAssembly to eliminate local environment setup, alongside automated test-based grading and spaced-repetition logic to re

    This repository provides a structured interactive curriculum for learning computer science and software engineering, though its primary focus is practical backend and systems engineering rather than formal CS theory topics like automata or complexity theory.

    Curriculum Mappings
    View on GitHub↗3,415
  • donnemartin/interactive-coding-challengesdonnemartin avatar

    donnemartin/interactive-coding-challenges

    31,529View on GitHub↗

    This project is a comprehensive curriculum for mastering computer science fundamentals and preparing for technical interviews. It provides over 120 interactive Python coding challenges that focus on algorithmic skill development, data structure implementation, and logical problem solving. The learning experience is delivered through a series of executable notebooks that combine instructional content with hands-on coding exercises. Each challenge is self-contained and relies on automated unit tests to verify the correctness of user-implemented solutions against predefined constraints and edge

    This project provides an educational curriculum with interactive coding challenges covering fundamental algorithms and data structures, though it focuses more on interview prep than formal theory topics like automata or complexity theory.

    PythonCoding Interview PreparationEducational NotebooksInterview Preparation Resources
    View on GitHub↗31,529
  • humanwhocodes/computer-science-in-javascripthumanwhocodes avatar

    humanwhocodes/computer-science-in-javascript

    9,119View on GitHub↗

    This is a collection of classic computer science algorithms and data structures implemented from scratch in JavaScript. The project provides reference implementations of fundamental concepts including sorting algorithms, binary search, linked lists, and binary search trees, all built as standalone pure functions with no external dependencies. The implementations cover a range of data structures, including singly-linked, doubly-linked, and circular linked lists with full traversal and mutation operations, as well as binary search trees supporting insertion, deletion, and search. Sorting algori

    This repository is a collection of classic algorithms and data structures implemented in JavaScript, making it a relevant reference library for computer science theory, though it focuses narrowly on algorithms and data structures rather than a full curriculum.

    JavaScriptAlgorithm ImplementationsComputer Science EducationAlgorithm Demonstrations
    View on GitHub↗9,119
Compare the top 10 at a glance
RepositoryStarsLanguageLicenseLast push
packtpublishing/learning-javascript-data-structures-and-algorithms-third-edition1.1KJavaScriptMITAug 9, 2022
pegasuswang/python_data_structures_and_algorithms3.1KPythonMITJun 16, 2024
algorithm-visualizer/algorithm-visualizer48.6KJavaScriptMITJun 9, 2024
wangkuiwu/datastructs_and_algorithm964C—Nov 22, 2020
kunal-kushwaha/dsa-bootcamp-java22.1KJava—Aug 18, 2024
thepranaygupta/data-structures-and-algorithms1.3KJavaGPL-3.0Jun 20, 2024
thealgorithms/go18.1KGoMITMar 30, 2026
lovebabbar/codehelp-dsa-busted-series3.7KC++—Aug 16, 2024
algorithmzuo/algorithm-journey3KJava—Feb 20, 2026
doocs/leetcode36.2KJavaCC-BY-SA-4.0Jun 16, 2026

Related searches

  • a comprehensive textbook on theoretical computer science
  • Computer science fundamentals
  • a structured curriculum for computer science studies
  • a study guide for computational complexity
  • a platform for learning computer science concepts
  • a structured curriculum for self-taught computer science
  • a curriculum for discrete mathematics
  • Math and theory for programmers