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

  • Introduction, Complexity analysis, Basics of DSA
  • Dynamic Programming, Divide and Conquer, Recursion, Backtracking, Greedy etc.
  • Introduction, Insertion, Deletion, Searching, Sorting
  • 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
  • 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

Dr. Harjeet Kaur
Assistant Professor

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