DEV Community

Cover image for 10 Data Structure and Algorithms Articles Beginners Should Read this Weekend
javinpaul
javinpaul

Posted on • Edited on

10 Data Structure and Algorithms Articles Beginners Should Read this Weekend

Disclosure: This post includes affiliate links; I may receive compensation if you purchase products or services from the different links provided in this article.

Hello guys, How are you doing? It's been a long time since I wrote anything here, so here I am, sharing with you a couple of nice articles you can read this week on Data Structure and Algorithms.

Along the way, I will also share some interesting books and courses for those who want to deep dive into this important topic.


Image credit - Grokking the Coding Interview: Patterns for Coding Questions

So, without wasting any more of your time, here is my list of 10 Data Structure and Algorithms Articles Programmers can read this week:

14 Patterns to Ace Any Coding Interview Question by Fahim ul Haq

This is my favorite article of this week, I am a big fan of Fahim ul Haq's writing and love his articles so you may consider bit partisan but you will agree with me once you read this article.

This article will teach you some of the common techniques to solve coding problems in interviews like the two-pointer approach, recursion, slow-fast pointer approach, sliding window, dynamic programming, and much more.

Actually, this article is just an introduction to their course --- Grokking the Coding Interview: Patterns for Coding Questions, so if you feel to deep dive on these patterns you should definitely check out this course. I loved it and it's my favorite course for coding interviews

10 Free Data Structure and Algorithm Courses Junior Developers Should Explorer

I have shared a bunch of helpful free courses to learn data structure and algorithms. These courses will not only teach you basic data structure like an array, linked list, binary tree, and hashtable but also advanced data structure like TRIE, Self-balanced trees like AVL and Red-Black tree, Graph, etc. If you like learning from free resources then you will enjoy these collections of courses.

Solving the classic Two-Sum and Three-Sum Problem in JavaScript by [Rohan Paul]

I have been learning JavaScript and what is better to keep it improving than solving coding problems in the language. This will help you to not only learn syntax but also how to build logic using the language. If you love solving coding problems you will enjoy this article.

Btw, you should have basic knowledge of Data Structure and Algorithms before you go for coding interviews. If you are new to the Data structure and Algorithms, here are few courses to refresh your knowledge depending upon which programming language suits you best, Like:

  1. Data Structures and Algorithms: Deep Dive Using Java for Java developers
  2. Algorithms and Data Structures in Python for those who love Python
  3. JavaScript Algorithms and Data Structures Masterclassby Colt Steele for JavaScript programmers

A graphical introduction to dynamic programming by [Avik Das]

Dynamic programming is an interesting concept and very useful too, particularly if you are preparing for coding interviews. This article provides an introduction of Dynamic programming with a different angle and using a different way, this might help you to learn it better.

If you want to learn more about Dynamic programming, here are a couple of more resources to learn Dynamic Programming better:

  1. Intro To Dynamic Programming --- Coding Interview Preparation
  2. Dynamic Programming --- I

Data Structures 101: Graphs --- A Visual Introduction for Beginners by [Estefania Cassingena Navone]

The graph is one of the most important data structure but often overlooked by beginners thinking that it's too complex to understand. If you are someone who feels Graph is not your cup of tea, this article will probably help you to change your perception. I really enjoyed this article.

142 Resources for Mastering Coding Interviews by [SeattleDataGuy]

A huge collection of resources for preparing for coding interviews, if you like to solve coding problems, you will find a lot of them here. I was a bit sad to not find any of my article there as some of them like 50+ Algorithms Problems and 20+ String Coding Problems are super useful for programmers preparing for their coding interview, but hey it's a still a very good collection.

How to prepare for competitive programming? by [Andrei Margeloiu]

This is an old article but I only read it last week. Its story of how author won 3 out of 4 Gold medals in the Computing Olympiad and share some very good insights and technique for preparing for competitive programming. I really loved this article and I know you'll like it too.

Google Interview Questions Deconstructed: Synonymous Queries by [Alex Golec]

I love to read anything about the Google interview process and whenever I saw stories discussing Google Interview Question, I make sure to read them. If you also share similar liking, then this article is for you.

Just to give you background Alex Golec is Ex-Google and currently working in Reddit NYC, so it's definitely someone who knows about the Google interview process.

Grokking Algorithms --- Book Review

My review about a book which I really love. This is the book I recommend to every beginner and computer science graduates aspiring to learn Algorithms and Data Structure.

The book doesn't cover all the data structure but whatever it covers, it does it really well. I really loved the pictures, which made me understand the concepts clearly. If you are a visual learner like me then you will enjoy this book.

And if you want to read the book, here is the link --- Grokking Algorithms: An Illustrated Guide for Programmers

Btw, if If you need more choices, particularly online courses to deep dive into Data Structure and algorithms for coding interview and general programming perspective, these are my recommend online courses for Java, Python, and JavaScript developers:

  1. Data Structures and Algorithms: Deep Dive Using Java for Java developers
  2. Algorithms and Data Structures in Python for those who love Python
  3. JavaScript Algorithms and Data Structures Masterclassby Colt Steele for JavaScript programmers

Thanks for reading this article so far guys, Have a nice day and enjoy learning Java and Algorithms.

Top comments (13)

Collapse
 
z2lai profile image
z2lai

Sweet collection of resources. I really appreciate that you included some language-specific resources as I'm always looking to improve my Javascript and programming skills at the same time.
You did repeat the same three resources at the end of the article though. Maybe you can just re-list every resource in this article at the end for easier reference?

Collapse
 
javinpaul profile image
javinpaul

Thank you z2lai, I agree that language specific resource makes it easier to learn and understand.

Collapse
 
pbouillon profile image
Pierre Bouillon

Very nice article, very useful !
I would love to see an example of the application of each patterns in the first article (ex: solving Maximum sum subarray of size ‘K’ using a sliding window)

Collapse
 
ryanhaber profile image
Ryan Haber

Love this. I especially love the references to other resources. But really, I love it all.

Collapse
 
javinpaul profile image
javinpaul

Thank you @ryan

Collapse
 
qzsg profile image
Adrian

Everytime u write something it becomes viral haha, awesome articles!

Collapse
 
javinpaul profile image
javinpaul

Thanks @adrian , it because of you guys who love to read, without you - readers, I am nothing.

Collapse
 
mtallerico1 profile image
Mike Tallerico

Very helpful article! Saving this one. Thanks!

Collapse
 
anortef profile image
Adrián Norte

A really good article! And I would also add that it does not matter if you have like 30 years of coding experience, coming back to the basics it's something everyone should do in a recurrent manner.

Collapse
 
tut_ml profile image
tut_ml

Useful resources. This article has also listed some more and useful data structure and algorithms courses- mltut.com/best-online-courses-to-l...

Collapse
 
jsmanifest profile image
jsmanifest

Very thorough and helpful!

Collapse
 
adavidoaiei profile image
Adavidoaiei Dumitru-Cornel

I'd like your presentation.

Collapse
 
mayankjoshi profile image
mayank joshi

Great post.🥳

Some comments may only be visible to logged-in visitors. Sign in to view all comments.