If you’re a student studying computer science or a software developer preparing for technical interviews, this practical book will help you learn and review some of the most important ideas in software engineering—data structures and algorithms—in a way that’s clearer, more concise, and more engaging than other materials.
By emphasizing practical knowledge and skills over theory, author Allen Downey shows you how to use data structures to implement efficient algorithms, and then analyze and measure their performance. You’ll explore the important classes in the Java collections framework (JCF), how they’re implemented, and how they’re expected to perform. Each chapter presents hands-on exercises supported by test code online.
Use data structures such as lists and maps, and understand how they workBuild an application that reads Wikipedia pages, parses the contents, and navigates the resulting data treeAnalyze code to predict how fast it will run and how much memory it will requireWrite classes that implement the Map interface, using a hash table and binary search treeBuild a simple web search engine with a crawler, an indexer that stores web page contents, and a retriever that returns user query resultsOther books by Allen Downey include Think Java, Think Python, Think Stats, and Think Bayes.
You can read this ebook online in a web browser, without downloading anything or installing software.
This ebook is available in file types:
This ebook is available in:
After you've bought this ebook, you can choose to download either the PDF version or the ePub, or both.
The publisher has supplied this book in DRM Free form with digital watermarking.
You can read this eBook on any device that supports DRM-free EPUB or DRM-free PDF format.
The publisher has supplied this book in encrypted form, which means that you need to install free software in order to unlock and read it.
To read this ebook on a mobile device (phone or tablet) you'll need to install one of these free apps:
To download and read this eBook on a PC or Mac:
The publisher has set limits on how much of this ebook you may print or copy. See details.