Think Data Structures

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 work; Build an application that reads Wikipedia pages, parses the contents, and navigates the resulting data tree; Analyze code to predict how fast it will run and how much memory it will require; Write classes that implement the Map interface, using a hash table and binary search tree; Build a simple web search engine with a crawler, an indexer that stores web page contents, and a retriever that returns user query results.
Download free tutorial in PDF (128 pages) created by .

Pages : 128
Size :
File type : HTML
Downloads: 81
Created: 2021-05-15
License: Free
Think Data Structures

Warning: Trying to access array offset on false in /home/tutovnfz/public_html/article.php on line 233

Others Data Structures, Data recovery Tutorials

Problem Solving with Algorithms and Data Structures

Others related eBooks about Think Data Structures

Fundamental Approaches to Software Engineering

Download free course Fundamental Approaches to Software Engineering, pdf file on 361 pages by Alessandra Russo, Andy Schürr....

How to Design Programs: An Introduction to Programming and Computing

This second edition has been completely revised. While the book continues to teach a systematic approach to program design, the second edition introduces different design recipes for interactive programs with graphical interfaces and batch programs. It also enriches its design recipes for functions ...

Managed Software Evolution

Download free course Managed Software Evolution, pdf file on 439 pages by Ralf Reussner, Michael Goedicke, Wilhelm Hasselbring, Birgit Vogel-Heuser, Jan Keim, Lukas Märtin....

Principles of Programming Languages

In this open book, our goal is to study the fundamental concepts in programming languages,..., download free Principles of Programming tutorial in PDF (163 pages) created by Mike Grant ....

HackSpace Magazine: Issue 45

Download free course HackSpace Magazine: Issue 45, pdf file on 116 pages by HackSpace Team....

Essential Bash

This book written to provide clear and concise explanation of topics for programmers both starting to learn the Bash programming as well as those diving in more complex topics. Most examples are linked to online playground that allows you to change the code and re-run it....

Art and Science of Smalltalk

This practical text provides an introduction to programming in Smalltalk, and explains the most efficient ways to think about and work with the system. Split into two parts, the first part covers the important technical background for programmers and managers, while the second part introduces some...

97 Things Every Programmer Should Know: Collective Wisdom from the Experts

Tap into the wisdom of experts to learn what every programmer should know, no matter what language you use. With the 97 short and extremely useful tips for programmers in this book, you'll expand your skills by adopting new approaches to old problems, learning appropriate best practices, and honing ...

An Introduction to Combinatorics and Graph Theory

Combinatorics is a branch of mathematics concerning the study of finite or countable discrete structures. Aspects of combinatorics include counting the structures of a given kind and size (enumerative combinatorics), deciding when certain criteria can be met, and constructing and analyzing objects...

Jenkins: The Definitive Guide: Continuous Integration for the Masses

This book teaches you how to automate your build, integration, release and deployment process with Jenkins, the popular Java-based open source tool that has revolutionized the way teams think about continuous integration (CI). This concise guide shows you how to seamlessly include Jenkins in the d...