awesome-repositories.com
Blog
awesome-repositories.com

Descoperă cele mai bune repository-uri open source cu căutare AI.

ExploreazăCăutări recomandateAlternative open-sourceSoftware self-hostedBlogHartă site
ProiectDespreCum realizăm clasamentulPresăServer MCP
LegalConfidențialitateTermeni
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
teivah avatar

teivah/algodeck

0
View on GitHub↗
5,819 stele·567 fork-uri·HTML·9 vizualizărideckly.dev↗

Algodeck

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 setting, clearing, flipping, and checking individual bits. For system design preparation, the cards explain distributed systems concepts such as consensus protocols, replication strategies, caching models, and consistency trade-offs.

The collection also includes algorithm analysis with Big O notation, dynamic programming problem-solving approaches, and graph traversal methods like breadth-first and depth-first search. The project is open-source and accepts community contributions through pull requests and issue tracking to expand and maintain the flash card collection.

Features

  • Algorithm Study Guides - Reviews key algorithms and data structures through a flash-card format to prepare for technical interviews.
  • Algorithm Interview Flash Cards - An open-source collection of flash cards for reviewing algorithms, data structures, and system design concepts.
  • Study Aids - A set of flash cards covering arrays, trees, heaps, tries, and graphs with time and space complexity notes.
  • Memoization - Describes memoization technique for caching expensive function call results.
  • Tabulation - Explains tabulation as a bottom-up dynamic programming caching strategy.
  • Data Structures Reference - Flash cards covering arrays, trees, heaps, tries, and graphs with time and space complexity notes.
  • Algorithm Complexity Guides - Provides flash cards explaining Big O notation and algorithm complexity analysis.
  • Graph Traversal Algorithms - Visits all vertices in a graph using breadth-first or depth-first search, with time complexity O(v e) and space O(v).
  • Flash Card Systems - Organises technical concepts as atomic question-answer pairs for self-testing and active recall.
  • System Design Decks - Flash cards that explain distributed systems concepts like consensus, replication, caching, and consistency models.
  • Flash Card Decks - Presents a curated set of flash cards covering algorithms, data structures, and system design topics for interview preparation.
  • Flash Card Decks - Reviewing algorithms and data structures through flash cards with spaced repetition for technical interview readiness.
  • Sorting Algorithms - Flash cards describing common sorting algorithms including quicksort, mergesort, heapsort, counting sort, and radix sort.
  • Spaced Repetition Systems - Implements spaced repetition scheduling to optimize long-term memory retention of technical concepts.
  • System Design Interview Preparation - Studying distributed systems concepts and trade-offs to prepare for system design interviews.
  • Technical Interview Preparation - Curates topics specifically for technical interview preparation rather than general computer science education.
  • Algorithm Implementations - Provides ready-to-use code snippets of classic algorithms and data structures for interview practice.
  • General Optimization Strategies - Chooses between greedy, dynamic programming, or branch-and-bound strategies to find the best solution under given constraints.
  • Unweighted Shortest Paths - Finds the shortest path between two nodes in an unweighted graph using breadth-first search.
  • Mergesort Implementations - Sorts an array in O(n log n) time using a stable, divide-and-conquer algorithm that works well with linked lists.
  • General Dynamic Programming Techniques - Breaks a problem into overlapping subproblems and caches their results to avoid redundant computation.
  • DFS-Based Detection - Determines whether a path or a cycle exists in a graph using depth-first search.
  • Dynamic Programming Techniques - Covers dynamic programming techniques with memoization and tabulation for interview prep.
  • Insertion Sorts - Builds the sorted array one element at a time by inserting each new element into its correct position among already sorted items.
  • Quicksorts - Partitions the array around a pivot and recursively sorts the partitions, performing well in practice due to good cache locality.
  • Radix Sorts - Processes digits one at a time from least significant to most, using a stable sort per digit to achieve linear time for small digit counts.
  • BFS and DFS Traversals - Visits all nodes in a tree using breadth-first or depth-first search, with BFS using O(v) space and DFS using O(h) space.
  • Trie Key Searches - Explains trie data structure operations including key insertion and search.
  • Flash Card Decks - Using flash cards and spaced repetition to commit data structure operations, properties, and complexity notes to long-term memory.
  • In-Place Reversal Operations - Swaps elements from both ends moving inward until the middle is reached, producing the reversed order in place.
  • Byzantine Fault Tolerant Protocols - Continues operating correctly even when some nodes malfunction, disobey the protocol, or act maliciously.
  • Heapsorts - Builds a heap and repeatedly extracts the root to produce a sorted array in place with O(n log n) time.
  • Distributed Systems Concepts - Learning about consistency models, replication, consensus, and other distributed system fundamentals.
  • Element Rotations - Reverses the whole array then reverses two sub-sections to shift elements by a given number of positions.
  • Bit Manipulation Techniques - Practicing common bitwise operations and tricks used in coding interviews and low-level programming via flash cards.
  • Rotated Sorted Array Search - Finds a target value in a rotated sorted array by first locating the pivot and then performing binary search on the appropriate subarray.
  • Sorted Array Search Implementations - Repeatedly halves the search range by comparing the middle element to the target, locating an item in logarithmic time.
  • Knapsack Problem Solving - Breaks the problem into subproblems and stores their results using memoization or tabulation to find the optimal subset of items.
  • Bitwise Operation Libraries - Ships a collection of bit manipulation functions using masks and shifts for interview preparation.
  • Counting Sorts - Counts occurrences of each distinct value and uses the counts to place elements in sorted order, stable and linear for small integer ranges.
  • Algorithm Foundations - Flashcards for reviewing algorithmic concepts and data structure implementations.
  • Algorithms and Data Structures - Flashcards and study materials for mastering algorithmic concepts.

Istoric stele

Graficul istoricului de stele pentru teivah/algodeckGraficul istoricului de stele pentru teivah/algodeck

Căutare AI

Explorează mai multe repository-uri excelente

Descrie ce ai nevoie în limbaj simplu — AI-ul sortează mii de proiecte open source selectate în funcție de relevanță.

Start searching with AI

Întrebări frecvente

Ce face teivah/algodeck?

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.

Care sunt principalele funcționalități ale teivah/algodeck?

Principalele funcționalități ale teivah/algodeck sunt: Algorithm Study Guides, Algorithm Interview Flash Cards, Study Aids, Memoization, Tabulation, Data Structures Reference, Algorithm Complexity Guides, Graph Traversal Algorithms.

Care sunt câteva alternative open-source pentru teivah/algodeck?

Alternativele open-source pentru teivah/algodeck includ: sharingsource/logicstack-leetcode — LogicStack-LeetCode is a curated repository of solved algorithm problems and data structure implementations, primarily… mandliya/algorithms_and_data_structures — This project is a comprehensive collection of C++ libraries and toolkits providing reference implementations for data… hustcc/js-sorting-algorithm — This project is a JavaScript sorting algorithm library and educational programming resource. It provides a collection… chefyuan/algorithm-base — algorithm-base is an educational library and study guide designed for simulating algorithms and studying data… kevin-wayne/algs4 — algs4 is a Java data structures library and algorithm reference collection designed as the source code for a standard… kodecocodes/swift-algorithm-club — This project is a comprehensive collection of common computer science algorithms and data structures implemented in…

Alternative open-source pentru Algodeck

Proiecte open-source similare, clasificate după numărul de funcționalități comune cu Algodeck.
  • sharingsource/logicstack-leetcodeAvatar SharingSource

    SharingSource/LogicStack-LeetCode

    7,495Vezi pe GitHub↗

    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

    algorithminterview-practiceinterview-questions
    Vezi pe GitHub↗7,495
  • mandliya/algorithms_and_data_structuresAvatar mandliya

    mandliya/algorithms_and_data_structures

    6,145Vezi pe GitHub↗

    This project is a comprehensive collection of C++ libraries and toolkits providing reference implementations for data structures, graph algorithms, and bitwise logic. It serves as a C++ algorithm reference containing over 180 solved coding problems and a specialized toolkit for competitive programming. The repository distinguishes itself through extensive low-level bit manipulation libraries for parity checks, endianness detection, and XOR-based logic. It also provides a wide array of reference solutions for complex algorithmic challenges involving backtracking, graph theory, and dynamic prog

    C++algorithmbit-manipulationc
    Vezi pe GitHub↗6,145
  • hustcc/js-sorting-algorithmAvatar hustcc

    hustcc/JS-Sorting-Algorithm

    5,193Vezi pe GitHub↗

    This project is a JavaScript sorting algorithm library and educational programming resource. It provides a collection of classic sorting implementations designed to teach the logic behind common data ordering techniques. The project serves as a technical reference guide, offering implementations of various sorting methods alongside explanations of their time and space complexity. It focuses on the application of fundamental computer science patterns within a JavaScript environment. The library covers a wide range of sorting algorithms, including comparison-based methods like quicksort, merge

    Javaalgorithmgitbookgolang
    Vezi pe GitHub↗5,193
  • chefyuan/algorithm-baseAvatar chefyuan

    chefyuan/algorithm-base

    10,702Vezi pe 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

    algorithmsbaseinterview-practice
    Vezi pe GitHub↗10,702
Vezi toate cele 30 alternative pentru Algodeck→