NineCard puzzle (aka Monkey Puzzle) available from AppStore and PlayStore
Succinct data structures
- SDSL - Succinct Data Structures Library C++ library cheat sheet
Some courses
MIT 6.006 Srini Devadas Introduction to Algorithms https://www.youtube.com/playlist?list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb
MIT 6.046J / 18.410J Erik Demaine Srini Devadas Nancy Lynch Design and Analysis of Algorithms https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-046j-design-and-analysis-of-algorithms-spring-2015/lecture-videos/
MIT 6.851 Erik Demaine Advanced Data Structures https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-851-advanced-data-structures-spring-2012/lecture-videos/
Data Structures and Algorithms by Naveen Garg
Text Books:
Algorithm Design by Jon Kleinberg, Eva Tardos, Éva Tardos https://www.amazon.com/Algorithm-Design-Jon-Kleinberg/dp/0321295358/ref=sr_1_2?crid=1LTLZ3FF8KIVK&dchild=1&keywords=design+of+algorithms&qid=1630909337&sprefix=design+of+algorithms%2Caps%2C237&sr=8-2
Introduction to Algorithms by (The MIT Press) Thomas H. Cormen https://www.amazon.com/Introduction-Algorithms-3rd-MIT-Press/dp/0262033844/ref=sr_1_1?crid=28Z7E4348ATLX&dchild=1&keywords=cormen+algorithms&qid=1630909358&sprefix=algorithms+cormen+%2Caps%2C239&sr=8-1
Randomized Algorithms by Rajeev Motwani https://www.amazon.com/Randomized-Algorithms-Rajeev-Motwani/dp/0521474655/ref=sr_1_1?crid=HJPTTLJS6SEF&dchild=1&keywords=randomized+algorithms&qid=1630909407&sprefix=randomized+%2Caps%2C243&sr=8-1
Some individual topic lectures (examples)
- BFS from MIT:
- Shell sort, a combination of insertion sort and bubble sort:
- Merge sort:
- Complexities fo sorting algorithms: https://www.geeksforgeeks.org/time-complexities-of-all-sorting-algorithms/
- Big-O for dummies:
- AVL balancing: https://www.cs.usfca.edu/~galles/visualization/AVLtree.html
- Red/Black trees simulation: https://www.cs.usfca.edu/~galles/visualization/RedBlack.html
- P vs NP:
- Hash tables on Medium: https://medium.com/omarelgabrys-blog/hash-tables-2fec6870207f
- Counting sort: https://medium.com/basecs/counting-linearly-with-counting-sort-cd8516ae09b3
- Visualised sorting algorithms along with pseudocode: https://visualgo.net/en/sorting
- Know Thy Complexities: https://www.bigocheatsheet.com/
- The sound of sorting: https://panthema.net/2013/sound-of-sorting/
- Very nice video about Big O:
- Sorting Algorithms Animations: https://www.toptal.com/developers/sorting-algorithms
- Visualising Algorithms: https://bost.ocks.org/mike/algorithms/