Next book (and tutorial topic): Data Structures and Algorithms

Ok - I think I am 99% close to pulling the trigger on my next collection of tutorials and book:

My plan is to target both people who want to learn more deeply about solving various computer problems using fundamental CS concepts as well as those cramming for interviews. Should be an interesting balance :scream:

I will share a potential TOC with all of you and gather feedback along the way!

:grinning:

3 Likes

Sounds interesting!

And…trigger pulled! :slight_smile: The plan is to have this done by June 2023. I’m still going back and forth on the TOC, but here is the tentative list:

  1. What makes this worth learning? (aka Why should you care?)
  2. Data Structures
    1. Arrays
    2. Hash Tables
    3. Set
    4. Linked Lists
    5. Stacks
    6. Queues
    7. Trees (Advanced - may skip)
      1. Binary
      2. Red-Black
      3. AVL
    8. Graphs:
      1. Directed
      2. Undirected
    9. Heaps
    10. Tries
  3. Algorithms
    1. Recursion
    2. Memoization
    3. Performance: Speed and Memory Considerations
    4. Searches
      1. Linear Search
      2. Binary Search
      3. Depth-First Search
      4. Breadth-First Search
    5. Sorts
      1. Selection
      2. Insertion
      3. Merge
      4. Bubble
      5. Quick
      6. Counting
      7. Radix
      8. Shell
    6. Shortest Distance (Djikstra) (Advanced - may skip)
    7. A* (Greedy) (Advanced - may skip)
  4. Popular Examples
    1. Towers of Hanoi
    2. Monty Hall Problem
    3. Square Matrix Rotation
    4. Caesar’s Cipher
    5. Rail Fence Cipher
    6. Hamming Distance
    7. Fisher-Yates Shuffle
    8. Best Time to Buy and Sell Stock
2 Likes

If you all have thoughts on topics that I should cover, shouldn’t cover, or any other feedback, let me know! :stuck_out_tongue:

I did my computer science degree 26 years ago. I think I heard about kirupa.com some 20 years ago the first time. Regardless, I am eager to check DS, like a fresher.

1 Like

Looking forward to this! As a long time freelancer (mostly design and front end ui dev) – the need to know pretty much everything else (full-stack dev, linux, mysql, etc) – being able to understand some of the more advanced cs concepts would be very beneficial.

1 Like

I think this is a great idea and I’m looking forward to see the content!

1 Like

I would buy and read with pleasure, but I don’t know English well:(

1 Like

A lot of the same content will be available on the site and Google Translate can help here :grinning:

Eventually, an official Russian translation of the book will be available just like it has for the other books :sunglasses:

1 Like