Skip to content
forked from teivah/algodeck

Algo Deck is an Open-Source Collection of +200 Algorithmic Cards to Help you Preparing your Algorithm & Data Structure Interview

License

Notifications You must be signed in to change notification settings

boudhayan/algodeck

 
 

Repository files navigation

Note: I also released the system design version: https://github.com/teivah/designdeck, an open-source collection of 230+ flash cards.

Overview

Algo Deck is an open-source collection of 200+ algorithmic flash cards.

It helps you preparing and succeeding in your algorithm & data structure interview. The code examples are in Java.

The topics covered are the following:

  • Array: reversing an array, finding a pivot, handling a dynamic array, etc.
  • Bit: operators, bit manipulation, etc.
  • Complexity: algorithm & data structures complexity
  • Dynamic Programming: dynamic programming concept
  • Encoding: encoding theory
  • General: general knowledge including how to approach a problem or testing a first solution
  • Graph: A*, Dijkstra, BFS vs DFS, cycles detection, topological sort, etc.
  • Greedy: greedy algorithms concepts
  • Hash Table: hashtable data structure
  • Heap: heap data structure including min-heap/max heap, binary heap use cases, etc.
  • Linked List: linked list data structure, how to get the middle element, iterate over two lists, doubly linked list, etc.
  • Math: discrete math
  • Queue: queue data structure
  • Recursion: recursion concepts
  • Sort: sort algorithms including concepts, complexity, use cases, etc.
  • Stack: stack data structure
  • String: string permutation, rotation, rabin-karp substring search, etc.
  • Technique: most important techniques to master to solve algorithmic problems including greedy techniques, runner, sliding window, etc.
  • Tree: binary tree use cases, binary search tree, 2-3 tree, red-black tree, use cases, etc.

Anki Deck

Anki is a free software (Windows/Mac/Linux/iPhone/Android) which makes remembering things easy. It utilizes spaced repetition which is a proven technique to increase the rate of memorization:

Spaced Repetition: The most powerful study technique on YouTube

The single biggest change that Anki brings about is that it means memory is no longer a haphazard event, to be left to chance. Rather, it guarantees I will remember something, with minimal effort. That is, Anki makes memory a choice.

Michael A. Nielsen, "Augmenting Long-term Memory"

Using Anki is a great way to prepare your algorithm & data structure interview. Here is a flashcard example:

The Anki version (a clone of the +200 flashcards from this repo) is available via a one-time GitHub sponsorship tier for $19: ❤️ Sponsor, One-time tab, Access to the latest Anki deck version of Algo Deck tier.

Cards Index

Array

Bit

Complexity

Dynamic Programming

Encoding

General

Graph

Greedy

Hash Table

Heap

Linked List

Math

Queue

Recursion

Sort

Stack

String

Technique

Tree

About

Algo Deck is an Open-Source Collection of +200 Algorithmic Cards to Help you Preparing your Algorithm & Data Structure Interview

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published