YoVDO

Data Structures & Algorithms Using C++

Offered By: IBM via edX

Tags

C++ Courses Algorithms Courses Data Structures Courses Sorting Algorithms Courses Searching Algorithms Courses Stacks Courses Queues Courses Linked Lists Courses

Course Description

Overview

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.


Syllabus

  • 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

Taught by

Josephine Simi N.A., Sripriya S, Abin K Abraham and Senthil Kumar P

Tags

Related Courses

Conception et mise en œuvre d'algorithmes.
École Polytechnique via Coursera
Applying Data Structures to Manipulate Cleansed UN Data
Coursera Project Network via Coursera
Data Structures
Brilliant
Programmazione I
University of Naples Federico II via edX
Linear Data Structures
Codecademy