Skip to main content

Best Resources to learn Data Structures and Algorithms

Best Resources to learn Data Structures and Algorithms






Data structures form the bread and butter of any interview for a software engineering role. Irrespective of the job description, a candidate can expect questions on the data structures, algorithms, and their varied applications. So it is of utmost importance to make DSA your first priority and not shy away from its challenges.

1. Master any one programming language.

It is preferred to pick up either Python or C++ for this task. C++ is often preferred by programmers because of the huge number of in-built functions that are available. It has a less running time and its STL library comes very handily in several situations.

2. Start reading books.

CLRS is a comprehensive source when it comes to DSA and you can start from it. It covers all the needed topics, but make sure you understand what you are reading. Take the help of blogs, editorials available online when you are stuck on any topic. If you find CLRS difficult to understand, you can start with the book Data Structures Using C by Thareja.

3. Practice, practice, and practice!

After completing a particular topic, implement it by coding up problems. You can practice from sites such as HackerrankCodechefCodeforces. Unless you implement what you have read, you cannot understand the trickier parts and other such subtleties.

4. Other books

After this, you can look up the book Algorithm Design by Jon Kleinberg and Éva Tardos. Proceeding onto this book after CLRS will be highly beneficial. The book by Steven Skiena, Algorithm Design Manual is also a highly recommended source for a strong concept of algorithms.

5. Online courses

Apart from books, there are online some useful MOOCs. The MOOC by Tim Roughgarden is considered one of the best sources for the preparation of DSA. It covers all the required topics starting right from scratch. Apart from this, Algorithms I and II offered by Princeton University is also good.
The above-mentioned sources are enough to make you an expert in DSA. But you can’t be one unless you solve problems. It might prove to be difficult at first to implement the algorithms but remember to be patient. 

Comments

Popular posts from this blog

7 BEST TIPS FOR PROGRAMMING FOR NEWBIES

7 BEST TIPS FOR PROGRAMMING FOR NEWBIES This post is intended for  anyone interested  in Computer Science, be a middle school student, a class 12 student preparing for his/her school exam, or a college student who is interested in coding. There are always some questions which trouble beginners. Some of these include- 1.  I guess I am too ‘young’ to do something huge like ‘coding’. 2.  I should wait until college to start. I should focus on my school and ‘JEE’ for now. 3.  Which laptop should I buy? 4.  Why should I learn to code? 5.  I fear I will break something. 6.  I don’t have a laptop. I guess I should not go into this field. 7.  Which ‘language’ should I begin with? 1. I guess I am too ‘young’ to do something huge like ‘coding’.  Coding is something that even a class 8 student can do. It is not a huge thing. Please don’t think too much in the initial stages, and focus on yourself. It’s a sk...

Best Resources for programming

Best Resources for programming Well, starting with Computer Science becomes really tough, especially because no one knows where to.  C++ is a good start. It is a good language with various applications and is accepted in almost all programming contests.  Python is another good language for beginners, but it's easy and has got its demerits as a first language(you will find it tough to move to C++ if you know Python as your first language, whereas learning Python after C++ is trivial). 1. Find a course on C++. Start with  Bucky’s C++ tutorials . They are easy to understand and to the point. If you watch and practice 2-3 videos every day, then you can easily finish it in 1 month. Make sure you implement everything taught either on Ideone or on your Computer’s IDE. The first video in this series explains how to install and use it. Follow the instructions well, and there would not be any issues. Don’t move to the next video without un...