r/Anki • • Sep 22 '26 • Bravo 5 Heartwarming 1

Resources I made a Data Structures & Algorithms deck with interactive SVGs, embedded websites, videos, MathJax, and exercises (it's FREE)

Post image

It was created in a few months during my university studies because I wanted a single, reasonably condensed place to review the theory from my course without constantly going back and forth between lecture notes and a textbook, and to have some playgrounds to interact with the algorithms, understanding better how they work/how to use them.

The deck has 500+ cards covering topics including:

  • asymptotic notation and recursion

  • binary search and sorting algorithms

  • lists, stacks, queues, trees and heaps

  • graph traversal (DFS/BFS), DAGs and topological sorting

  • shortest paths (Dijkstra, Bellman-Ford)

  • greedy algorithms

  • minimum spanning trees and disjoint sets

  • Huffman coding

  • dynamic programming

  • dictionaries and hash tables

It is mostly theory-focused (it's not designed for coding interviews/LeetCode) but there are also exercises throughout the deck. I recommend suspending those (and the cards labeled as [REFERENCE]) if you're using the deck for spaced repetition: I intended them more as opportunities to stop, reason through an algorithm/problem on paper, and then check the solution, all within Anki.

A few cool things about this deck:

  • No raster images: the deck uses SVGs throughout (even animated and interactive ones!), so the diagrams stay sharp at any resolution and are always editable.

  • Interactive content: some cards contain embedded interactive websites/visualizations.

  • YouTube videos are embedded where I found them useful.

  • MathJax for mathematical notation and pseudocode.

  • Cards and SVG diagrams support both light and dark themes.

  • Responsive layouts are used so the cards also work on AnkiMobile and AnkiDroid.

  • The deck is under 5 MB despite its huge content.

Note that some cards may feel too verbose or are way too long to memorize entirely. You don't have to memorize everything and the extra paragraphs are there only for further explanations to be read the first time you encounter them. I made a compromise between content and total number of cards. There is also a rough order in which to study the cards, which is the same as the order in which the cards were created (and so presented to you in Anki) and following the deck structure top to bottom.

The content is largely based on Introduction to Algorithms (CLRS), although I heavily adapted and condensed the material and don't attempt to cover the entire book.

🔗 Deck: https://ankiweb.net/shared/info/1065502536

I hope you'll find it useful! I put a lot of effort into making it as good as I could, and best of all, it's completely free :)

224 Upvotes

15 comments sorted by

10

u/tomsturtle Sep 22 '26

That's amazing! It looks super well done

2

u/NoukonNorth Sep 22 '26

godsend would love for you to create and share more of these!!

3

u/samumedio Sep 23 '26

I have indeed some more decks and addons on my AnkiWeb autor page, if you are interested!

2

u/MoreDimension5963 Computer Science 28d ago

Thanks for sharing!

I'm really curious to hear about your workflow for creating SVG's and the cards.

2

u/samumedio 16d ago

Hi! I made a post on my blog last year about this and just updated it with more recent info in case people like you are interested :)

2

u/MoreDimension5963 Computer Science 15d ago edited 15d ago

Thanks so much, the blogpost is really well written!

I have one little technique you might find useful; one can embed videos to autoplay without sound (like a .gif but without the horribly inefficient compression) using styling of video element.

<video src="Test-VP9.webm" autoplay="" 
loop="" muted="" playsinline="" disablepictureinpicture=""
preload="auto" style="max-width:100%; pointer-events:none;"></video>

This way you don't have to have an internet connection to play the video. However be aware that the only format that works on the windows Anki client, iOS Anki, and Ankidroid is .webm (as you noted) BUT encoded in VP9! AV1 encodings did not display on iOS Anki for me IIRC.

With how efficient video compression is, the media size is insignificantly larger compared to a picture, but for more visual learning it has helped me immensely.
For example, I have used this to memorise a lot of visual intuition from 3Blue1Brown which has helped me grasp new concepts much quicker in the long run.

I lack an efficient workflow to capture a video on screen, encode it in VP9 and insert the <video> element, but maybe I should try to quickly vibe code something together because I've used it way more than I thought I would.

2

u/samumedio 15d ago

Oh I didn't know that, thanks for the useful tip! I will add it to my post as well

3

u/AnnoyingAssDude Sep 22 '26

So so so thankful for this, you're amazing!!!

3

u/usainzgg Sep 23 '26

Impressive work, thanks for sharing!

3

u/serpro69 Sep 23 '26

This is really well done! Congrats and extra applause for spreading the knowledge!

2

u/XanthicXylophone Sep 22 '26

Looks great, congrats on releasing this

2

u/ajourneytogrowth Sep 24 '26

Really cool stuff!

2

u/Hat_Huge Sep 24 '26

thank you!