Overview
Course Description
A good algorithm usually comes together with a set of good data structures that allow the algorithm to manipulate the data efficiently. In this online course, we consider the common data structures that are used in various computational problems. You will learn how these data structures are implemented in different programming languages and will practice implementing them in our programming assignments. This will help you to understand what is going on inside a particular built-in implementation of a data structure and what to expect from it.
Important: What are data structures? A data structure is a specialized format used to store, process, and retrieve data. By providing a unique framework for each set of data, these programmatic building blocks streamline information access and management. Data structures typically fall into two overarching categories: linear and nonlinear. Linear data structures involve ordered sequences of elements and offer simple implementation for non-complex programs.
What you'll learn
- Introduction To Data
- Stacks and Queues
- Storage structures for arrays
- Sparse matrices
- Stacks and Queues
- Double Ended Queue
- Priority Queue
- Infix to Postfix
- Postfix to infix
- Expression evaluation
- Linked Lists
- Linked stacks and queues
- Operations on polynomials
- Doubly linked lists
- Circularly linked lists
- Dynamic storage management
- Garbage collection and compaction.
- Trees
- Binary Trees
- Binary search trees
- Tree traversal
- Expression manipulation
- Symbol table construction
- Height balanced trees
- Minimum spanning trees
- B-Trees
- B+ Trees
- Graphs
- Representation of graphs-BFS
- DFS – Topological sort – Shortest path problems
- String representation and manipulations
- Pattern matching
- Sorting and Searching
- Linear search
- Hash table methods.