What you'll learn

This course provides a solid foundation in Data Structures and Algorithms (DSA) using C++. It covers fundamental concepts such as arrays, linked lists, stacks, queues, trees, graphs, sorting, and searching algorithms. Through hands-on coding exercises and problem-solving techniques, students will develop a strong understanding of how data is stored, manipulated, and optimized in real-world applications. By the end of this course, learners will be able to analyze algorithm efficiency and implement data structures efficiently in C++. Outcomes: 1. Understand the Fundamentals of DSA. 2. Implement Basic Data Structures in C++ 3. Apply Trees and Graphs Concepts 4. Master Searching and Sorting Algorithms 5. Analyze Algorithm Complexity 6. Solve Real-World Problems Using DSA Skill

  • Overview of Data Structures and Algorithms Importance of Time and Space Complexity Big O, Big O, and Big T Notations Algorithm Design Techniques: Greedy, Divide & Conquer, Dynamic Programming Recursion and its Applications Implementation Coding Practice
  • Arrays: Definition, Operations, Applications Searching Algorithms: Linear Search, Binary Search Sorting Algorithms: Bubble Sort, Selection Sort, Insertion Sort, Merge Sort, Quick Sort Sorting Algorithms: Bubble Sort, Selection Sort, Insertion Sort, Merge Sort, Quick Sort Applications Implementation Implementation
  • Introduction to Linked Lists Types: Singly Linked List, Doubly Linked List, Circular Linked List Operations: Insertion, Deletion, Traversal, Reversal Applications of Linked Lists Stack Stacks: Concepts, Implementation, Applications (e.g., Balancing Symbols, Postfix Evaluation) Implementation
  • Stacks: Concepts, Implementation, Applications (e.g., Balancing Symbols, Postfix Evaluation) Queues: Types (Simple Queue, Circular Queue, Priority Queue) Deque and Applications Real-World Use Cases Implementation Coding Practice
  • Introduction to Trees and Terminologies Binary Trees: Traversals (Inorder, Preorder, Postorder) Binary Search Tree (BST): Insertion, Deletion, Search AVL Trees: Rotations and Balancing Heaps: Min-Heap, Max-Heap, Heap Sort Introduction to Graph Graph Traversals Shortest Path Algorithms Prims and Kruskal Algorithms
  • Introduction to Hashing Hashing Techniques Collision Resolution Techniques

Amarinder Kaur
Assistant Professor

Ms. Amarinder Kaur is currently working as Assistant Professor in the School of Computer Science & Engineering at Lovely Professional University. She has 20+ years of experience as a Data Structure and Algorithms tutor in various colleges. He have conducted lots of workshops and skill development courses on programming languages, data structures and algorithms.