Competitive Problem-Solving using C/CPP with DSA

Durations -15 days.

Program Structure

  • C / C++ Programming Fundamentals & OOPs
  • Algorithm Analysis & Complexity (Time & Space)
  • Searching & Sorting Techniques
  • Linear Data Structures (Arrays, Strings, Stack, Queue, Linked List)
  • Non-Linear Data Structures (Trees, Heaps, Graphs)
  • Recursion, Backtracking & Dynamic Programming
  • Competitive Coding Techniques & STL
  • Mini Project & Interview-Oriented Problem Solving

Assessment – MCQ’s , Module Test

Program Outcomes

  • Ability to solve complex problems using optimal algorithms
  • Strong understanding of Data Structures & Algorithmic thinking
  • Improved code efficiency and optimization skills
  • Confidence to face coding interviews and online assessments
  • Readiness for competitive programming and campus placements

Tools / Platform:

  • GCC / G++ Compiler
  • VS Code / Code::Blocks
  • Online Judges (HackerRank, CodeChef, LeetCode)
  • Git & GitHub (basic)

Experiential Project Based Learning:

  • Design and implement DSA-based mini projects using C/C++
  • Real-time problem-solving with menu-driven applications
  • Application of arrays, linked lists, stacks, queues, trees, and graphs
  • Optimization of solutions based on time and space constraints
  • Project demonstrations aligned with interview and placement scenarios
C / C++ Programming Foundations
Program structure, compilation process Data types, variables, operators Input/Output (scanf/printf, cin/cout)
Control statements (if, switch) Looping constructs (for, while, do-while) Pattern-based problem solving
Functions & Memory Basics
Functions & recursion basics Call by value vs call by reference Pointers & references
Arrays (1D, 2D) Str Practice: array & string problems
C++ OOPs Essentials
Classes & objects Constructors & destructors Encapsulation & abstraction
Inheritance & polymorphism STL overview Mini coding challenge (OOP-based)
Algorithm Analysis
What is an algorithm? Time & space complexity Big-O, Big-Ω, Big-Θ
Best, worst, average cases Constraint-based thinking Optimization techniques
Searching & Sorting
Linear & Binary Search Sorting algorithms:
- Bubble, Selection, Insertion
- Merge Sort, Quick Sort
STL sorting (sort())
Competitive problems on sorting & searching
Arrays & Strings (Advanced)
Prefix sum technique Sliding window technique Two-pointer approach
String manipulation problems Interview-level problem solving
Stack & Queue
Stack implementation (array & STL) Applications:
- Expression evaluation
- Balanced parentheses
Queue, circular queue
Deque & Priority Queue Practice problems
Linked List
Singly, doubly, circular linked list Insertion, deletion, traversal Slow & fast pointer technique
Linked list interview problems
Trees
Binary Tree & Binary Search Tree Tree traversals (In order, Pre order, Post order) Height, diameter problems
Recursive & iterative solutions
Heaps
Min heap & max heap Priority queue using STL Heap sort
Top-K problems Competitive coding problems
Graphs
Graph representation (adjacency list/matrix) BFS & DFS Connected components
Shortest path basics Graph problem practice
Recursion & Backtracking
Recursion patterns
Backtracking approach
Problems:
  • Subsets
  • Permutations
  • N-Queens (conceptual)
Greedy & Dynamic Programming
Greedy algorithms (activity selection, knapsack)
Dynamic Programming basics
1D & 2D DP problems
Optimization strategies
Competitive Programming Practice
Problem-solving strategies
Handling constraints & edge cases
STL mastery for contests
Live contest-style problem solving
Code optimization techniques
Mini Project & Interview Preparation
Mini Project using DSA (menu-driven / real-world) Mock coding interview Common DSA interview patterns
Resume-oriented problem discussion Final assessment (MCQs + coding)

Enquire Now

Enquire Now

Enquire Now

Please Sign Up to Download

Please Sign Up to Download

Enquire Now

Please Sign Up to Download




    Enquiry Form