The Wayback Machine - https://web.archive.org/web/20180428000455/https://www.packtpub.com/application-development/c-data-structures-and-algorithms

C++ Data Structures and Algorithms

Learn how to build efficient, secure and robust code in C++ by using data structures and algorithms - the building blocks of C++
Preview in Mapt

C++ Data Structures and Algorithms

Wisnu Anggoro
New Release!

Learn how to build efficient, secure and robust code in C++ by using data structures and algorithms - the building blocks of C++
Mapt Subscription
FREE
€29.73/m after trial
eBook
€9.73
RRP €35.68
Save 72%
Print + eBook
€36.99
RRP €36.99
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
€0.00
€9.73
€36.99
€29.74 p/m after trial
RRP €35.68
RRP €36.99
Subscription
eBook
Print + eBook
Start 14 Day Trial

Frequently bought together


C++ Data Structures and Algorithms Book Cover
C++ Data Structures and Algorithms
€ 35.68
€ 9.73
DirectX 11.1 Game Programming Book Cover
DirectX 11.1 Game Programming
€ 22.59
€ 9.73
Buy 2 for €19.46
Save €32.62
Add to Cart

Book Details

ISBN 139781788835213
Paperback322 pages

Book Description

C++ is a general-purpose programming language which has evolved over the years and is used to develop software for many different sectors. This book will be your companion as it takes you through implementing classic data structures and algorithms to help you get up and running as a confident C++ programmer.

We begin with an introduction to C++ data structures and algorithms while also covering essential language constructs. Next, we will see how to store data using linked lists, arrays, stacks, and queues. Then, we will learn how to implement different sorting algorithms, such as quick sort and heap sort. Along with these, we will dive into searching algorithms such as linear search, binary search and more. Our next mission will be to attain high performance by implementing algorithms to string datatypes and implementing hash structures in algorithm design. We'll also analyze Brute Force algorithms, Greedy algorithms, and more.

By the end of the book, you'll know how to build components that are easy to understand, debug, and use in different applications.

Table of Contents

Chapter 1: Learning Data Structures and Algorithms in C++
Technical requirements
Introduction to basic C++
Developing abstract data types
Analyzing the algorithm
Summary
QA section
Further reading
Chapter 2: Storing Data in Lists and Linked Lists
Technical requirements
Getting closer to an array
Building a List ADT
Introduction to node
Building a Singly Linked List ADT
Building the Doubly Linked List ADT
Applying List and LinkedList using STL
Summary
QA section
Further reading
Chapter 3: Constructing Stacks and Queues
Technical requirements
Building a Stack ADT
Building a Queue ADT
Building a Deque ADT
Summary
QA section
Further reading
Chapter 4: Arranging Data Elements Using a Sorting Algorithm
Technical requirements
Bubble sort
Selection sort
Insertion sort
Merge sort
Quick sort
Counting sort
Radix sort
Summary
QA section
Further reading
Chapter 5: Finding out an Element Using Searching Algorithms
Technical requirements
Linear search
Binary search
Ternary search
Interpolation search
Jump search
Exponential search
Sublist search
Summary
QA section
Further reading
Chapter 6: Dealing with the String Data Type
Technical requirement
String in C++
Playing with words
Constructing a string from binary digits
Subsequence string
Pattern searching
Summary
QA section
Further reading
Chapter 7: Building a Hierarchical Tree Structure
Technical requirements
Building a binary tree ADT
Building a binary search tree ADT
Building a balanced BST (AVL) ADT
Building a binary heap ADT
Summary
QA section
Further reading
Chapter 8: Associating a Value to a Key in a Hash Table
Technical requirement
Getting acquainted with hash tables
Implementing a separate chaining technique
Implementing the open addressing technique
Summary
QA section
Further reading
Chapter 9: Implementation of Algorithms in Real Life
Technical requirements
Greedy algorithms
Divide and conquer algorithms
Dynamic programming
Brute-force algorithms
Randomized algorithms
Backtracking algorithms
Summary
QA section
Further reading

What You Will Learn

  • Know how to use arrays and lists to get better results in complex scenarios
  • Build enhanced applications by using hashtables, dictionaries, and sets
  • Implement searching algorithms such as linear search, binary search, jump search, exponential search, and more
  • Have a positive impact on the efficiency of applications with tree traversal
  • Explore the design used in sorting algorithms like Heap sort, Quick sort, Merge sort and Radix sort
  • Implement various common algorithms in string data types
  • Find out how to design an algorithm for a specific task using the common algorithm paradigms

Authors

Table of Contents

Chapter 1: Learning Data Structures and Algorithms in C++
Technical requirements
Introduction to basic C++
Developing abstract data types
Analyzing the algorithm
Summary
QA section
Further reading
Chapter 2: Storing Data in Lists and Linked Lists
Technical requirements
Getting closer to an array
Building a List ADT
Introduction to node
Building a Singly Linked List ADT
Building the Doubly Linked List ADT
Applying List and LinkedList using STL
Summary
QA section
Further reading
Chapter 3: Constructing Stacks and Queues
Technical requirements
Building a Stack ADT
Building a Queue ADT
Building a Deque ADT
Summary
QA section
Further reading
Chapter 4: Arranging Data Elements Using a Sorting Algorithm
Technical requirements
Bubble sort
Selection sort
Insertion sort
Merge sort
Quick sort
Counting sort
Radix sort
Summary
QA section
Further reading
Chapter 5: Finding out an Element Using Searching Algorithms
Technical requirements
Linear search
Binary search
Ternary search
Interpolation search
Jump search
Exponential search
Sublist search
Summary
QA section
Further reading
Chapter 6: Dealing with the String Data Type
Technical requirement
String in C++
Playing with words
Constructing a string from binary digits
Subsequence string
Pattern searching
Summary
QA section
Further reading
Chapter 7: Building a Hierarchical Tree Structure
Technical requirements
Building a binary tree ADT
Building a binary search tree ADT
Building a balanced BST (AVL) ADT
Building a binary heap ADT
Summary
QA section
Further reading
Chapter 8: Associating a Value to a Key in a Hash Table
Technical requirement
Getting acquainted with hash tables
Implementing a separate chaining technique
Implementing the open addressing technique
Summary
QA section
Further reading
Chapter 9: Implementation of Algorithms in Real Life
Technical requirements
Greedy algorithms
Divide and conquer algorithms
Dynamic programming
Brute-force algorithms
Randomized algorithms
Backtracking algorithms
Summary
QA section
Further reading

Book Details

ISBN 139781788835213
Paperback322 pages
Read More

Read More Reviews

Recommended for You

DirectX 11.1 Game Programming Book Cover
DirectX 11.1 Game Programming
€ 22.59
€ 9.73
C# Data Structures and Algorithms Book Cover
C# Data Structures and Algorithms
€ 39.25
€ 9.73
Hands-On Data Structures and Algorithms with JavaScript Book Cover
Hands-On Data Structures and Algorithms with JavaScript
€ 35.68
€ 9.73
Hands-On GUI Programming with C++ and Qt5 Book Cover
Hands-On GUI Programming with C++ and Qt5
€ 35.68
€ 9.73
Learn Algorithms and Data Structures in Java for Day-to-Day Applications [Video] Book Cover
Learn Algorithms and Data Structures in Java for Day-to-Day Applications [Video]
€ 141.59
€ 9.73
Apache Spark with Python - Big Data with PySpark and Spark [Video] Book Cover
Apache Spark with Python - Big Data with PySpark and Spark [Video]
€ 145.16
€ 9.73