Understanding various data structures and algorithms is the foundation of modern programming.
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.
● 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
OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.
Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.
Find this site helpful? Tell a friend about us.
We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.
Your purchases help us maintain our catalog and keep our servers humming without ads.
Thank you for supporting OpenCourser.