Data Structure & Algorithm
-
Introduction - Data Structures
-
Complexity of Algorithms
- Time Space Tradeoff
-
Linear and Binary Searching
-
Sorting and Recursion
-
Discussion of Common Sorting Techniques
-
Insertion Sort, Selection Sort
-
Bubble Sort, Quick Sort
-
Merge Sort, Radix Sort
-
Factorial and Tower of Hanoi Problem
-
Linked Lists - Abstract Data Types
-
List ADTs and Linked Lists
-
Singly, Two Way and Circular Linked Lists
- Stacks and Queues
-
Stacks and Queues Implementation Strategies
-
Prefix, Infix and Postfix Expressions
-
Prefix, Infix and Postfix Transformation and Evaluation Algorithms
-
Hashing - Hash Indices and Hash Functions
-
Static and Dynamic Hashing
-
Collisions in Hash Indices
-
Collision Resolving Techniques
-
Trees - Tree Concepts, Binary Tree
- Binary Search Tree
- Heaps, Heap Sort
-
Huffman Encoding Technique
-
AVL Tree, B Tree and B+ Tree
-
Graphs - Graph Terminologies, Representing Graphs
-
Graph Searching: BFS and DFS
-
Shortest Path Problems
-
Minimum Spanning Tree
-
Minimum Spanning Tree Algorithms
- Greedy Algorithms
-
Divide and Conquer Strategy
-
Dynamic Programming and Backtracking