## DEV Community

javinpaul

Posted on • Updated on

# 10 Data Structure and Algorithms Articles Beginners Should Read this Weekend

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.

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:

### 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]

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.

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?

javinpaul

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

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)

Ryan Haber

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

javinpaul

Thank you @ryan

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

javinpaul

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

Mike Tallerico

Very helpful article! Saving this one. Thanks!

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.

mayank joshi

Great post.🥳

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...