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

javinpaul Updated on γ»7 min read

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 on interviews like 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 can also check out this course.

### 10 Free Data Structure and Algorithm Courses Junior Developers Should Explore

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

Posted on by:

### javinpaul

Java Programmer and blogger

### Discussion

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?

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

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)

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

Thank you @ryan

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

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

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.

Great post.π₯³