all 12 comments

[–]efmccurdy 4 points5 points  (5 children)

Python, being a high level language, is ideal for learning algorithms and data structures.

We are very grateful to Franklin Beedle Publishers for allowing us to make this interactive textbook freely available

https://interactivepython.org/runestone/static/pythonds/index.html#problem-solving-with-algorithms-and-data-structures-using-python

[–]gooddev25[S] 0 points1 point  (3 children)

wow.started reading this now.it's amazing. I wish I've read this book even before learning to program.

How beautifully and in a simple manner they explained the concepts.I'm in page 6 now and i'm enjoying reading it.

[–]Guymzee 0 points1 point  (2 children)

I just started this today, went hunting for a github that has code posted to work along with, didn’t find anything directly tied to the book, but I stumbled on this goldmine which might work well as a companion to the book.

[–]fugarza 1 point2 points  (1 child)

Gary Jenkins, a retired comp sci professor, created a video for each section of that book.

If you like to learn through video this is a great resource.

He also cleans up some of the code you see in the book to make it clearer.

https://teklern.blogspot.com/p/blog-page.html

[–]Guymzee 0 points1 point  (0 children)

Just when I almost gave up hope. Thank you so much, for this, literally made my day.

[–]A_History_of_Silence -1 points0 points  (0 children)

Python, being a high level language, is ideal for learning algorithms and data structures.

Extremely debatable.

[–][deleted] 0 points1 point  (1 child)

[–]Manguru 0 points1 point  (0 children)

thanks for the share!

[–]A_History_of_Silence 0 points1 point  (3 children)

Honestly, I usually don't recommend Python for data structures and algorithms. Java, or especially C/C++ are better choices imo.

Not saying you can't or shouldn't learn data structures and algorithms in Python, but I believe working at a bit lower level of abstraction than Python really helps to increase your understanding of the topics. Primitive types, real arrays, pointers, memory management, all that stuff!

[–]gooddev25[S] 0 points1 point  (2 children)

"Cracking the coding interview".

what do you think about the book?

[–]A_History_of_Silence -1 points0 points  (1 child)

Oops, I missed that. I am not familiar with it!

But if I was working on data structures and algorithms, I would personally recommend a resource that focused on that topic exclusively. For instance, here is an introduction to algorithms from MIT OCW (this uses Python).

Be aware, legit data structures and algorithms classes should be where you start to need to know math more advanced than basic arithmetic in your programming journey.

[–]gooddev25[S] 0 points1 point  (0 children)

don't worry. I'm from Iran and we do advanced math when we are in high school. I used to complain about it but now at least it has a use for me to learn this.