Skip to main content

Data Structures & Algorithms Using C++

Build efficient programs by learning how to implement data structures using algorithmic techniques and solve various computational problems using the C++ programming language.

Data Structures & Algorithms Using  C++

There is one session available:

After a course session ends, it will be archivedOpens in a new tab.
Starts Feb 14
Ends Nov 28
Estimated 8 weeks
3–4 hours per week
Progress at your own speed
Optional upgrade available

About this course

Skip About this course

Understanding various data structures and algorithms is the foundation of modern programming.

In this self-paced course you will learn about the characteristics of commonly used data structures and algorithms and how to implement them to be able to conduct efficiency analyses in C++ from scratch.

To solve real-world problems efficiently, advanced C++ programs are developed using pointers, dynamic storage, and linear and non-linear data structures. You will gain experience with a variety of algorithm types like recursion, searching, sorting, dynamic programming, greedy, and divide and conquer, which are required to build efficient programs. You will also learn how to measure the efficiency of the program you have written. After completing the course, you will be able to systematically approach coding problems in a step-by-step manner.

There are several implementations that are presented in the development of each data structure. As you solve problems ranging from easy to difficult that address different data structures, you will learn how to select and program various data structures and apply the most suitable algorithms to solve a particular problem.

Solving problems that require different data structures will help you understand the strengths and weaknesses of common data structures and teach you how to choose the right combinations of data structures and algorithms for efficiently solving problems.

At a glance

What you'll learn

Skip What you'll learn

Different data structures, abstract data types and their applications

How to implement linear and non-linear data structures

How to implement stack and queue abstract data types using arrays and linked lists

How to analyze the efficiency of various algorithms – time and space complexity

How to implement linear and binary search algorithms and their efficiency analysis

Different sorting algorithms and their implementations

Problem solving using iterative, recursive algorithms, their efficiency analysis and understand various algorithm design strategies

  • Introduction to data structures & algorithm involving problem solving, algorithm concept, abstract data types, arrays and linked list.
  • Introduction to stack and queue data structure, its operations and implementation using arrays and linked lists.
  • Analysis of various algorithms, learn how to measure algorithm efficiency, time and space complexity, best, average and worst case analysis.
  • Understand various searching techniques, linear and binary search algorithms, their efficiency analysis and implementation.
  • Introduction to various sorting algorithms – Bubble sort, insertion sort, merge sort, quick sort and heap sort, its implementation and efficiency analysis.
  • Understand various non-linear data structures - Tree. Its real-time applications, implementation, tree traversals and its functionalities. Implementation of Binary Search Tree
  • Understand and learn graph data structure. Different types of graph , their implementation and other operations.
  • Understand various Algorithm Design Strategies.
  • Recursive, Greedy, Dive and Conquer and Dynamic Programming

About the instructors

Interested in this course for your business or team?

Train your employees in the most in-demand topics, with edX for Business.