Save for later

Introduction to Data Structures and Algorithms in C++

C++,

Knowing some fundamental data structures and algorithms both in theory and from a practical implementation perspective helps you in being a better C++ programmer, gives you a good foundation to understand standard library’s containers and algorithms inner “under the hood” mechanics, and serves as a kind of knowledge that is required in several coding interviews, as well. In this course, Introduction to Data Structures and Algorithms in C++, you’ll learn how to implement some fundamental data structures and algorithms in C++ from scratch, with a combination of theoretical introduction using slides, and practical C++ implementation code as well. No prior data structure or algorithm theory knowledge is required. You only need a basic knowledge of C++ language features. First, you'll discover how to develop a C++ class to safely use arrays, with automatic memory management using constructor and destructor, and safely accessing array elements with bounds checking. Then, you’ll see how to further improve this array class, overloading the insertion operator to offer a simple nice idiomatic printing syntax for arrays, and optimizing the array class with move semantics. You’ll also learn how to properly copy arrays, and you’ll see the copy-and-swap idiom in action. Then, you’ll learn how to generalize the array class with templates. Next, you’ll learn about the Big O notation in a practical intuitive way, and you’ll apply that knowledge to a couple of search algorithms. You’ll start learning how to search using the simple linear search, and then you’ll see how to improve searching, using binary search. I’ll first introduce these algorithms using slides, and then you’ll see them in action in concrete C++ demo code. Finally, you’ll discover how to implement other common data structures, like the stack with its LIFO policy and push and pop operations, and linked lists, including operations like list node insertion and removal, and searching elements in a linked list. After completing this course, you will be able to implement some common fundamental data structures and algorithms from scratch in C++, you’ll have a practical understanding of the Big O notation to evaluate and compare algorithm performance trends, and you’ll see in action, several interesting C++ coding techniques that you’ll be able to reuse in your own C++ projects as well. Moreover, you will be able to use this foundational knowledge to move forward to more advanced C++ data structures and algorithms topics.

Get Details and Enroll Now

OpenCourser is an affiliate partner of Pluralsight and may earn a commission when you buy through our links.

Get a Reminder

Send to:
Rating Not enough ratings
Length 3.5 hours
Starts On Demand (Start anytime)
Cost $35/month (Access to entire library- free trial available)
From Pluralsight
Instructor Giovanni Dicanio
Download Videos On Windows, MacOS, iOS, and Android Pluralsight app
Language English
Subjects Programming
Tags Software Development Programming Languages

Get a Reminder

Send to:

Similar Courses

Careers

An overview of related careers and their average salaries in the US. Bars indicate income percentile.

Structures/Bridge $81k

Structures Technician 1 $81k

Associate Structures Engineering $83k

Structures Designer $85k

Structures CADD $91k

Structures Mech $94k

Aircraft Structures $96k

Structures Foreman $98k

Engineer of Structures $100k

Structures Engineer 1 2 $103k

Product Engineer - Structures $115k

Structures Estimator Manager $127k

Write a review

Your opinion matters. Tell us what you think.

Rating Not enough ratings
Length 3.5 hours
Starts On Demand (Start anytime)
Cost $35/month (Access to entire library- free trial available)
From Pluralsight
Instructor Giovanni Dicanio
Download Videos On Windows, MacOS, iOS, and Android Pluralsight app
Language English
Subjects Programming
Tags Software Development Programming Languages

Similar Courses

Sorted by relevance

Like this course?

Here's what to do next:

  • Save this course for later
  • Get more details from the course provider
  • Enroll in this course
Enroll Now