Hands-On Data Structures and Algorithms with Rust
This is the code repository for Hands-On Data Structures and Algorithms with Rust, published by Packt.
Learn programming techniques to build effective, maintainable, and readable code in Rust 2018
What is this book about?
Rust has come a long way and is now utilized in several contexts. Its key strengths are its software infrastructure and resource-constrained applications, including desktop applications, servers, and performance-critical applications, not forgetting its importance in systems' programming. This book will be your guide as it takes you through implementing classic data structures and algorithms in Rust, helping you to get up and running as a confident Rust programmer.
This book covers the following exciting features: Design and implement complex data structures in Rust Analyze, implement, and improve searching and sorting algorithms in Rust Create and use well-tested and reusable components with Rust Understand the basics of multithreaded programming and advanced algorithm design Become familiar with application profiling based on benchmarking and testing Explore the borrowing complexity of implementing algorithms
If you feel this book is for you, get your copy today!
Instructions and Navigations
All of the code is organized into folders. For example, Chapter02.
The code will look like the following:
fn my_function() {
let x = 10;
do_something(x); // ownership is moved here
let y = x; // x is now invalid!
}
Following is what you need for this book: This book is for developers seeking to use Rust solutions in a practical/professional setting; who wants to learn essential Data Structures and Algorithms in Rust. It is for developers with basic Rust language knowledge, some experience in other programming languages is required.
With the following software and hardware list you can run all code files present in the book (Chapter 1-12).
Software and Hardware List
Chapter | Software required | OS required |
---|---|---|
1-12 | rustc, cargo | Windows, Linux, MacOS |
1-12 | Visual Studio Code | Windows 7 or later, Linux, or MacOS 10.9+ |
1-12 | Rust for Visual Studio Code | Windows 7 or later, Linux, or MacOS 10.9+ |
We also provide a PDF file that has color images of the screenshots/diagrams used in this book. Click here to download it.
Errata
-
Chapter name: Lists, Lists, and More Lists, Section name: Linked lists, Page no: 58
In other words, its a queue (or LIFOβshort for Last In First Out) structure.
should be replaced as
In other words, its a queue (or FIFOβshort for First In First Out) structure.
Related products
Get to Know the Author
Claus Matzinger is a software engineer with a very diverse background. After working in a small company maintaining code for embedded devices, he joined a large corporation to work on legacy Smalltalk applications. This led to a great interest in programming languages early on, and Claus became the CTO for a health games start-up based on Scala technology.
Since then, Claus' roles have shifted toward customer-facing roles in the IoT database-technology start-up crate.io and, most recently, Microsoft. There, he hosts a podcast, writes code together with customers, and blogs about the solutions arising from these engagements. For more than 5 years, Claus has implemented software to help customers innovate, achieve, and maintain success.
Check out his blog at blog.x5ff.xyz!
Suggestions and Feedback
Click here if you have any feedback or suggestions.
Download a free PDF
If you have already purchased a print or Kindle version of this book, you can get a DRM-free PDF version at no cost.
Simply click on the link to claim your free PDF.