C++ Data Structures and Algorithm Design Principles: Leverage the power of modern C++ to build robust and scalable applications 1st Edition by John Carey (PDF)

6

 

Ebook Info

  • Published: 2019
  • Number of pages: 849 pages
  • Format: PDF
  • File Size: 11.04 MB
  • Authors: John Carey

Description

Get started with C++ programming by learning how to build applications using its data structures and algorithmsKey FeaturesExplore data structures such as arrays, stacks, and graphs with real-world examplesStudy the trade-offs between algorithms and data structures and discover what works and what doesn’tDiscover how techniques such as bloom filters and multi-way heaps boost real-world applicationsBook DescriptionC++ is a mature multi-paradigm programming language that enables you to write high-level code with a high degree of control over the hardware. Today, significant parts of software infrastructure, including databases, browsers, multimedia frameworks, and GUI toolkits, are written in C++.This book starts by introducing C++ data structures and how to store data using linked lists, arrays, stacks, and queues. In later chapters, the book explains the basic algorithm design paradigms, such as the greedy approach and the divide-and-conquer approach, which are used to solve a large variety of computational problems. Finally, you will learn the advanced technique of dynamic programming to develop optimized implementations of several algorithms discussed in the book.By the end of this book, you will have learned how to implement standard data structures and algorithms in efficient and scalable C++ 14 code.What you will learnBuild applications using hash tables, dictionaries, and setsExplore how modern hardware affects the actual run-time performance of programsApply common algorithms such as heapsort and merge sort for string data typesUse C++ template metaprogramming to write code librariesImplement a URL shortening service using a bloom filterUse appropriate modern C++ idioms such as std:: array instead of C-style arraysWho this book is forThis book is for developers or students who want to revisit basic data structures and algorithm design techniques. Although no mathematical background is required, basic knowledge of complexity classes and Big O notation along with a qualification in an algorithms course will help you get the most out of this book. Familiarity with C++ 14 standard is assumed.Table of ContentsLists, Stacks, and QueuesTrees, Heaps, and GraphsHash Tables and Bloom FiltersDivide and ConquerGreedy AlgorithmsGraph Algorithms IGraph Algorithms IIDynamic Programming IDynamic Programming II

User’s Reviews

Reviews from Amazon users which were colected at the time this book was published on the website:

⭐Beyond the fact that this book is riddled with typos and poor code alignment, it also is full of non-idiomatic C++11 code snippets. It contains all of the low-quality examples you expect to find on internet forums posted by non-experts. It demonstrates all sorts of bad programming habits and lazy coding techniques.Find a better book from a better publisher.

⭐This book gives a pretty thorough overview of many of the most famous algorithm paradigms and data structures. The first part is sort of a “refresher”, giving a general tour of how to implement typical data structures (linked lists, stacks, heaps, etc.) in C++, first by using STL and then from scratch. This section contains a decent amount of useful tidbits for quick reference, in much plainer english than a lot of the technical documentation out there. The rest of the chapters delve into more advanced topics, like graphs, greedy technique, and dynamic programming. The explanations of a lot of the tougher stuff tend to be pretty easy to follow, and each chapter contains a 5 or so exercises with step by step descriptions. A lot of the activities that are included are pretty interesting, though i did find with a few of them that I was having trouble understanding what the problem description was asking.There are definitely some issues with the formatting in some of the code snippets (brackets not aligned), and i did spot a few typos and other little glitches in the text, but nothing too serious. Also, though the illustrations were quite helpful overall, some of them were meant to be color-coded despite the fact that the book is printed in black and white.it’s also worth saying though that the miniature programs contained in the exercises don’t really touch upon a lot of really important aspects of c++ programming, particularly proper memory allocation. A lot of code examples contain things that are considered somewhat verbotten among most c++ developers (global variables, raw pointers, etc.). Thankfully, the authors do point out these sections and give a very general explanation about why they’re “evil”. Its clear they did it this way to make the code easier to read and understand for students, especially cause the book is about algorithms much more that it is about c++, but someone who is very unfamiliar with c++ best practices should be aware that there’s a lot more to it when youre working on a full fledged application.These are really minor gripes, though. overall i’m quite happy with this book. I’d recommend it primarily for upper-intermediate programmers wanting to expand their general knowledge of algorithms, or anyone who wants a straightforward explanation of most of the common techniques for reference or technical interviews.

⭐There are sooooooo many typos in this book. It makes the information completely tedious to navigate, essentially useless. The typos also exist in the code examples. All in all, this book is a huge waste of money.

⭐Very bad C++Full of mistakes which confuse the readerFull of repeated code which is not needed

Keywords

Free Download C++ Data Structures and Algorithm Design Principles: Leverage the power of modern C++ to build robust and scalable applications 1st Edition in PDF format
C++ Data Structures and Algorithm Design Principles: Leverage the power of modern C++ to build robust and scalable applications 1st Edition PDF Free Download
Download C++ Data Structures and Algorithm Design Principles: Leverage the power of modern C++ to build robust and scalable applications 1st Edition 2019 PDF Free
C++ Data Structures and Algorithm Design Principles: Leverage the power of modern C++ to build robust and scalable applications 1st Edition 2019 PDF Free Download
Download C++ Data Structures and Algorithm Design Principles: Leverage the power of modern C++ to build robust and scalable applications 1st Edition PDF
Free Download Ebook C++ Data Structures and Algorithm Design Principles: Leverage the power of modern C++ to build robust and scalable applications 1st Edition

Previous articleDigital Design and Computer Architecture 2nd Edition by David Harris (PDF)
Next articleLaTeX in 24 Hours: A Practical Guide for Scientific Writing by Dilip Datta (PDF)