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:
- Data Structures and Algorithms: Deep Dive Using Java for Java developers
- Algorithms and Data Structures in Python for those who love Python
- 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]
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:
- Data Structures and Algorithms: Deep Dive Using Java for Java developers
- Algorithms and Data Structures in Python for those who love Python
- 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.