Get 3 months of Audible free - Get this deal
$54.71 with 13 percent savings
Print List Price: $62.96

These promotions will be applied to this item:

You have subscribed to ! We will pre-order your items within 24 hours of when they become available. When new books are released, well charge your default payment method for the lowest price available during the pre-order period.
Update your device or payment method, cancel individual pre-orders or your subscription at
Your Memberships & Subscriptions
Kindle app logo image

Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet or computer C no Kindle device required.

Read instantly on your browser with Kindle for Web.

Using your mobile phone camera, scan the code below and download the Kindle app.

QR code to download the Kindle app

  • A Common-Sense Guide to Data Structures and Algorithms, Second Edition
  • To view this video, download

Follow the author

Something went wrong. Please try your request again later.

A Common-Sense Guide to Data Structures and Algorithms, Second Edition 2nd Edition, Kindle Edition

4.8 out of 5 stars 792 ratings
4.4 on Goodreads
573 ratings

' + '' + decodeURIComponent(encodedIframeContent) + ''+''); doc.close(); } } this.iframeload = function () { var iframe = document.getElementById(iframeId); iframe.style.display = ''; setTimeout(function () { setIframeHeight(initialResizeCallback); }, 20); } function getDocHeight(doc) { var contentDiv = doc.getElementById("iframeContent"); var docHeight = 0; if(contentDiv){ docHeight = Math.max( contentDiv.scrollHeight, contentDiv.offsetHeight, contentDiv.clientHeight ); } return docHeight; } function setIframeHeight(resizeCallback) { var iframeDoc, iframe = document.getElementById(iframeId); iframeDoc = ((iframe.contentWindow && iframe.contentWindow.document) || iframe.contentDocument); if (iframeDoc) { var h = getDocHeight(iframeDoc); if (h && h != 0) { iframe.style.height = parseInt(h) + 'px'; if(typeof resizeCallback == "function") { resizeCallback(iframeId); } } else if (nTries < MAX_TRIES) { nTries++; setTimeout(function () { setIframeHeight(resizeCallback); }, 50); } } } this.resizeIframe = function(resizeCallback) { nTries = 0; setIframeHeight(resizeCallback); } } return DynamicIframe; });

Algorithms and data structures are much more than abstract concepts. Mastering them enables you to write code that runs faster and more efficiently, which is particularly important for today??s web and mobile apps. Take a practical approach to data structures and algorithms, with techniques and real-world scenarios that you can use in your daily production code, with examples in JavaScript, Python, and Ruby. This new and revised second edition features new chapters on recursion, dynamic programming, and using Big O in your daily work.


Use Big O notation to measure and articulate the efficiency of your code, and modify your algorithm to make it faster. Find out how your choice of arrays, linked lists, and hash tables can dramatically affect the code you write. Use recursion to solve tricky problems and create algorithms that run exponentially faster than the alternatives. Dig into advanced data structures such as binary trees and graphs to help scale specialized applications such as social networks and mapping software. You??ll even encounter a single keyword that can give your code a turbo boost. Practice your new skills with exercises in every chapter, along with detailed solutions.


Use these techniques today to make your code faster and more scalable.

Due to its large file size, this book may take longer to download
This title is only available on select devices and the latest version of the Kindle app. Please refer to the supported devices list before purchase. Available on these devices

See all supported devices

Kindle E-Readers

  • Kindle Paperwhite (10th Generation)
  • Kindle Paperwhite (12th Generation)
  • Kindle Paperwhite (5th Generation)
  • Kindle Touch
  • Kindle Oasis (10th Generation)
  • Kindle Paperwhite
  • Kindle Oasis (9th Generation)
  • Kindle
  • All New Kindle E-reader
  • All new Kindle paperwhite
  • Kindle (11th Generation, 2024 Release)
  • Kindle Scribe, 1st generation (2024 release)
  • Kindle Scribe (1st Generation)
  • Kindle (10th Generation)
  • Kindle Oasis

Fire Tablets

  • Fire HD 8 (10th Generation)
  • Fire HD 10 (11th Generation)

Free Kindle Reading Apps

  • Kindle for Android Phones
  • Kindle for Android Tablets
  • Kindle for iPhone
  • Kindle for iPad
  • Kindle for PC
  • Kindle for Web
  • Kindle for Mac

Product description

About the Author

Jay Wengrow is an experienced educator and developer who is dedicated to teaching the world to code. He is the founder and CEO of Actualize, a national coding bootcamp and apprenticeship; Anyone Can Learn To Code, an educational company teaching everyone to code through online tutorials, K-12 computer science curriculum, and corporate training. --This text refers to an alternate kindle_edition edition.

Product details

  • ASIN ‏ : ‎ B0DD1C6BLQ
  • Publisher ‏ : ‎ Pragmatic Bookshelf
  • Accessibility ‏ : ‎ Learn more
  • Publication date ‏ : ‎ Aug. 10 2020
  • Edition ‏ : ‎ 2nd
  • Language ‏ : ‎ English
  • File size ‏ : ‎ 13.2 MB
  • Enhanced typesetting ‏ : ‎ Enabled
  • X-Ray ‏ : ‎ Not Enabled
  • Word Wise ‏ : ‎ Not Enabled
  • Print length ‏ : ‎ 507 pages
  • ISBN-13 ‏ : ‎ 978-1680508055
  • Page Flip ‏ : ‎ Enabled
  • 鶹 Rank: #731,654 in Kindle Store (See Top 100 in Kindle Store)
  • Customer Reviews:
    4.8 out of 5 stars 792 ratings

About the author

Follow authors to get new release updates, plus improved recommendations.
Jay Wengrow
Brief content visible, double tap to read full content.
Full content visible, double tap to read brief content.

Discover more of the authors books, see similar authors, read book recommendations and more.

Customer reviews

4.8 out of 5 stars
792 global ratings

Review this product

Share your thoughts with other customers

Customers say

Customers find the content of the book good, interesting, and interesting. They appreciate the format and print quality. Readers also say the book makes more advanced topics easy to understand and an excellent and approachable introduction to common data structures and algorithms. They mention each chapter introduces the topic in plain language and builds upon the core ideas without using math terms.

Select to learn more

9 customers mention "Content"9 positive0 negative

Customers find the content of the book good. They say the author makes it interesting and the format gives them trainings at the end of each chapter. Readers also mention the print quality is acceptable and the price is reasonable.

"...Overall, this was a worthwhile purchase. The print quality was acceptable and the price was reasonable...." Read more

"...It makes it easier to understand the algorithms. What a great book. Highly recommend this for a developers must have book collection." Read more

"...More importantly, the author makes it interesting and provides good end of chapter problems...." Read more

"...I love the format of the book that gives you trainings at the end of each chapter...." Read more

6 customers mention "Informative"6 positive0 negative

Customers find the book informative. They say it's an excellent and approachable introduction to common data structures and algorithms. Each chapter introduces the topic in plain language and builds upon the core ideas without using math terms. Readers mention the book makes it easier to understand the algorithms and is great for self-taught programmers.

"The book offers superb insight into some of the most fundamental data structures and algorithms...." Read more

"...It explains things so simply that when it comes to something like searching an array it seems too simple but makes more advanced topics really easy..." Read more

"...about that, but python and ruby turn out to be pretty good for learning the material..." Read more

"If you want a very concise, clear and easy to understand book to learn or re-asses your knowledge of computer science, algorithms and data structures..." Read more

Good book but
2 out of 5 stars
Good book but
Book came damaged
Thank you for your feedback
Sorry, there was an error
Sorry we couldn't load the review

Top reviews from Canada

  • Reviewed in Canada on June 7, 2024
    Verified Purchase
    The book offers superb insight into some of the most fundamental data structures and algorithms. However, don't expect to go too deep into any particular topic.

    A strong mathematics background is not required to read this book. Each chapter introduces the topic in plain language and builds upon the core ideas without overcomplicating them with too much mathematics.

    Sample code is provided in the book, albeit in a random assortment of Ruby, Python, and JavaScript, but separate editions of the book stick to a single language.

    The end of each chapter contains exercises which vary in difficulty. Answers are provided at the back of the book. Exercises sometimes require coding or drawing in addition to thinking.

    Although I felt that a few topics could have been added to the book (merge sort, topological sort, union-find, minimum spanning trees, Prim's, Kruskal's), I won't take points off. Perhaps those topics will appear in a 2nd volume.

    Overall, this was a worthwhile purchase. The print quality was acceptable and the price was reasonable.

    I recommend this book to anyone, beginner or expert, to learn or refresh their knowledge of data structures and algorithms.
    One person found this helpful
    Report
  • Reviewed in Canada on December 20, 2021
    Verified Purchase
    As someone who taught myself to code as a kid, Ive often regretted never getting a formal CS degree because I missed out on some of the fundamentals. A lot of these are implemented for us in modern programming languages but they are important if you want to understand whats actually going on and also for understanding the performance of your own code.

    Ive tried a lot over the years to teach myself the common data structures and algorithms. Ive learned a bit here and there but I found this book finally made a lot of them click for me. It explains things so simply that when it comes to something like searching an array it seems too simple but makes more advanced topics really easy to understand.

    Also as another reviewer mentioned, the use of Ruby and Python (neither of which Ive used before) actually makes it easier to understand the topics because the code is less cluttered with boiler plate code. It makes it easier to understand the algorithms.

    What a great book. Highly recommend this for a developers must have book collection.
    5 people found this helpful
    Report
  • Reviewed in Canada on December 11, 2021
    Verified Purchase
    This book is one of my favorites. The examples are in python, ruby and javascript.
    I was skeptical about that, but python and ruby turn out to be pretty good for learning the material
    without a lot of extra boilerplate like you'd get in java/C++.
    More importantly, the author makes it interesting and provides good end of chapter problems. You can only learn this stuff well by implementing a fair amount of it yourself.
    3 people found this helpful
    Report
  • Reviewed in Canada on December 27, 2020
    Verified Purchase
    If you want a very concise, clear and easy to understand book to learn or re-asses your knowledge of computer science, algorithms and data structures, pick up this book! I love the format of the book that gives you trainings at the end of each chapter. The book is so good that I looked up the author to see if he has written more books, sadly this is his only book!
    8 people found this helpful
    Report
  • Reviewed in Canada on March 6, 2022
    Verified Purchase
    I've thoroughly enjoyed reading this book every day and learned a lot! Great book!
    One person found this helpful
    Report
  • Reviewed in Canada on August 9, 2022
    Verified Purchase
    Awesome!
  • Reviewed in Canada on March 17, 2022
    Verified Purchase
    The book goes really slow, and everything is explained without using math terms. Awesome!
    One person found this helpful
    Report
  • Reviewed in Canada on July 21, 2025
    Verified Purchase
    This book is good if you're curious on the theory behind data structures and algorithms. If you're trying to get practical experience using them, identifying applicable problems, or preparing for interviews, I would look elsewhere. Online courses with a built in editor served me far better than this book.

Top reviews from other countries

Translate all reviews to English
  • hsatou
    5.0 out of 5 stars 르ꥺȥǩ`λ򱡤DZʲٳDzԤܲѧϰʤ餳α
    Reviewed in Japan on January 8, 2024
    Verified Purchase
    ͬߤΡA Common-Sense Guide to Data Structures and Algorithms in Python, Volume 1Ȥ֡ͬߤʤΤǥƥͬ褦˸ߤʹäZPython˽gäΤϤäƤΤαϥ르ꥺȥǩ`ΌgװPython, Ruby, JavaScriptФäƤ롣˽Javaˤǩ`쥯󤬤ɤ۸֤äƤΤäѤ֤ʤƤαiΤ르ꥺȥǩ`αȤƤȫȻԿषȤʤȫγߤǤ혤iMƤLinked ListStackGraphTreeȤäĤʥǩ`Nsort르ꥺَʹˤĤ뤳Ȥ褦˕Ƥ롣Leet Codedž}⤤ƤۤgĤʥץ`㏊ˤʤ뤬ǰˤαiǤȤΥ르ꥺO(n)΄IٶȤǤȤäh˵ֿʤʤ롣IٶȤζxʤɤ˼Ƥ뤫Leet Codeφ}हơयΥǩ`jѤˤɤʤΤ⤷ƤȤĿĤˤ򤤤Ƥʤ르ꥺαȤƤϮΥѥȤʤαDZҪ֪RƤޤäۤ礤gHΤȤJava`äPythonRubyˤضΥǩ`gװ饤֥٤ʤΤǡۤȤɤΥ르ꥺόgHΌgװʹCϤʤˤƤ⡢gװ˷֪äƤȤФȤȤۤĤȤåȤ⤢롣αߤǥ르ꥺTLeet Codeǥ르ꥺȥǩ`Ά}gɽ⤤ƤߤȤΤץߥ󥰤Ǥgװ򤹤뤿ˤЄʥץ`ǤߤΥץީ`Z饤֥ҙΤ˕rgꤹơgHˤɤL^Pץdž}Q㏊򵡤꤬Ǥ롣20ǰ˥ץߥ󥰤ʼ㏊Ȥ˽ޤˤǤäƳɹʮ֤ˤʤץީ`ؤξšΙCʧäƤޤ롣Ϥʤ٤i餽αkչƥꥸʥΥץȤˤLeet CodeΆ}ȡMꤷƤ뤬Ȥζǥץߥ󥰤ˤץߥ󥰤_ˤϡgĤʥץ`ʤʤ櫓ǡ르ꥺȥǩ`˚XTˡTOEIC 700ϤiΤ뷽ˤϤαǤ롣˽TOEIC 720ǥץߥ󥰤αϲɤʤǤiߤʤƤ롣
    Report
  • Amit Saha
    5.0 out of 5 stars Great introductory/refresher book for data structures
    Reviewed in Australia on June 23, 2023
    Verified Purchase
    The author does a fantastic job in covering a broad range of data structures and problem solving techniques. I work as a software engineer, and I don't consider myself great at data structures and algorithms. This book certainly improved my confidence and provided me a refresher of the common ones that I am aware of, and know well. Additionally, it also taught me new topics that I hadn't studied before.
  • Gustavo Caetano
    5.0 out of 5 stars Great for beginners and advanced devs
    Reviewed in Brazil on May 10, 2024
    Verified Purchase
    For some reason I see many people not recommending this book for beginners and recommending Grokking Algorithms instead. These people say this one is more advanced.

    I must say it's not! It's an amazing book, really well explained in layman terms. Illustrations are great and the play by play of algorithms is very efficient at helping you visualize the solutions

    It's much better than Grokking Algorithms, IMO
  • BK
    4.0 out of 5 stars Nice book
    Reviewed in Turkey on January 29, 2025
    Verified Purchase
    The book is very comprehensive and easy to grasp, if youre a beginner I definitely recommend it. But the author has included examples from both Ruby, Python and JS, and as someone with 0 Ruby knowledge, reading and understanding Ruby examples can be difficult at times. If youre like me, I recommend buying this same books Python or JavaScript versions, as I also had to buy the Python version to grasp the material even better.
  • Dilrukshan Figurado
    5.0 out of 5 stars Excellent
    Reviewed in the United Kingdom on March 20, 2025
    Verified Purchase
    Excellent presentation of core technical information

Report an issue


Does this item contain inappropriate content?
Do you believe that this item violates a copyright?
Does this item contain quality or formatting issues?