Course description
Data Structures & Algorithms Using C++
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.
Upcoming start dates
Suitability - Who should attend?
Prerequisites
None
Outcome / Qualification etc.
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
Training Course Content
- 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
Course delivery details
This course is offered through IBM, a partner institute of EdX.
3–4 hours per week
Expenses
- Verified Track -$149
- Audit Track - Free