Live data from Hacker News

Advanced Data Structures

courses.csail.mit.edu

31–40 of 148 posts

Re: Advanced Data Structures

#31

Thank you for sharing this. Anyone would recommend resources for learning fundamental of data structures? Book, video, or courses are welcome. I don't care the programming languages that are used for implementations. I am OK with C.

Skiena's book is excellent and is definitely one to get.

Another would be Sedgewick's Algorithms. He has a pair of courses on Coursera [0] that follow his 4th edition which uses Java.

You're in for such a treat! Learning data structures and algorithms is so fun and really changes the way you think about programming.

[0] https://www.coursera.org/learn/introduction-to-algorithms

Re: Advanced Data Structures

#32

Thank you for sharing this. Anyone would recommend resources for learning fundamental of data structures? Book, video, or courses are welcome. I don't care the programming languages that are used for implementations. I am OK with C.

Open Data Structures [0] by Pat Morin is a good one, and it comes in 3 editions (pseudocode, java, and c++) so you can pick whichever you prefer.

[0]: http://opendatastructures.org/

Re: Advanced Data Structures

#33

why are these hand drawn diagrams easier for me to understand and remember?

Probably because they're visually more distinct. We tend to just glance over things that look very familiar because "we know this" (not a conscious act). Using different colors for different components also helps. Allows details to "pop" out at you. Versus a diagram that's blue/black/gray/white.

Re: Advanced Data Structures

#35
post #30

Thank you for sharing this. Anyone would recommend resources for learning fundamental of data structures? Book, video, or courses are welcome. I don't care the programming languages that are used for implementations. I am OK with C.

The Algorithm Design Manual by Steven Skiena Really enjoyed that book! It intersperses real world use cases which helps when your motivation starts to wane and has a warmer tone than most algorithm books. That being said, it is still pretty rigorous and will take a lot of work to get through it all. Whichever resource you choose, make sure it has exercises and do them! Even if you can't 100% figure some of them out j…

I'll second that recommendation and op makes an important point that is rarely expressed when threads on learning algorithms show up on HN: Don't be discouraged if you find the material hard at first, "Even if you can't 100% figure some of them out just trying to will help your thinking immensely."

Re: Advanced Data Structures

#36

Thank you for sharing this. Anyone would recommend resources for learning fundamental of data structures? Book, video, or courses are welcome. I don't care the programming languages that are used for implementations. I am OK with C.

The preliminary undergraduate data structures course at my uni was taught using the Data Structures and Algorithms book by Michael T. Goodrich, Roberto Tamassia & Michael H. Goldwasser. The book is available for Python, Java and C++, though I can only vouch for the Java one as I haven't had the opportunity to read the others.

http://ww3.datastructures.net/

Re: Advanced Data Structures

#38

Thank you for sharing this. Anyone would recommend resources for learning fundamental of data structures? Book, video, or courses are welcome. I don't care the programming languages that are used for implementations. I am OK with C.

I also recommend the Algorithm Design Manual. In my algs class in school, we used Cormen's Introduction to Algorithms (of course), which is considered to be seminal in the field, but that's a bit of a bear to get through.

Alg Design Manual is great and gives shorter shrift to complexity notation and the math behind it, while still giving you a robust introduction to it. Also, it's not as long as it appears as much of the book is devoted to going through specific algorithms so you can be familiar and add them to your mental "tool kit."

Re: Advanced Data Structures

#39
Often shied away from as too complicated, this book deserves the obligatory mentioning: Knuth's The Art of Computer Programming. Although not using Python and perhaps being too analytical and detailed for an average programmer's taste, the book is the single biggest classic treatise on algorithms and data structures.

At the other end of the spectrum - accessible and brief, I find Dasgupta et al.'s Algorithms a refreshingly engaging read.

Re: Advanced Data Structures

#40
This is very nice.

But right now as a programmer, I am using data-structures more on an as-needed basis. Sometimes it is difficult to find the right data-structures for the job. So then it would be nice to have a resource that provides the functionality of data-structures as a black box. Learning these would make more sense than learning also all of the gory technical details upfront.

Post reply on HN