Description
In this course, you will learn:
- Introduce you to Abstract Data Types and explain the key difference between an Abstract Data Type and a Data Structure. You will also learn about arrays (a special sort of data structure) and C++'s abstracted array data type.
- introduces you to two fundamental data structures: stacks and queues, and identifies the operations that must be supplied with each stack and queue implementation. Students will also learn how to use arrays and circular arrays to create a stack and a queue, as well as discuss the benefits and drawbacks of using them.
- During this unit, students will gain a better knowledge of how variables are defined and represented in memory. Students will also learn about pointers and how to utilize them to access specific memory locations.
- Learn about dynamic memory allocation. When implementing programs and data structures, we frequently have no idea how big the data is or how it is structured. Learning about dynamic memory allocation can help you understand how to request memory during runtime.
- Discuss the hazards of memory allocation and de-allocation, as well as memory leaks and dangling pointers, among other potential downsides. You will learn how to avoid these dangers by taking advantage of the full capabilities of the C/C++ language to improve memory efficiency.
- Developers must consider a number of criteria when developing Data Structures. One of the most important parameters is the efficiency of the algorithms (such as search algorithms) that may be applied to Data Structures. This lesson will describe how to measure an algorithm's efficiency, highlight issues that may arise during these measurements, and show methods for describing algorithm efficiency.
- Learn how to apply searching and sorting algorithms to arrays. Students will also learn how to perform worst-case and best-case analyses on these algorithms, estimate their efficiency, and assign them generalized Big O notations.
- Learn how to create these new Data Structures, explore the operations that go with them, and discover various methods of traversing, searching, and sorting them.
Syllabus:
- Abstract Data Types and Arrays in C++
- Introduction to Stacks and Queues
- Pointers and References in C++
- Dynamic Memory Allocation
- Linked Stacks, Queues, and Lists
- Algorithm Efficiency
- Searching and Sorting Algorithms
- Hash Tables, Graphs, and Trees