Skip to content

Repository files navigation

Data Structures and Algorithms in C++

My journey of learning Data Structures and Algorithms using Modern C++.

📌 About

This repository contains my daily C++ programming and Data Structures & Algorithms practice.

The goal of this repository is to build strong problem-solving skills, improve coding ability, and prepare for software engineering interviews.

Each topic contains:

  • Concept examples
  • Practice problems & LeetCode solutions
  • Notes & interactive visualizers
  • Optimized multi-approach implementations (Brute Force → Optimal)

🗂 Repository Structure

data-structure-and-algorithm-cpp/
├── 01-variables-and-data-types/
├── 02-operators/
├── 03-conditional-statements/
├── 04-loops/
├── 05-patterns/
├── 06-functions/
├── 08-pointers/
├── 09-arrays-part-1/
│   ├── linear & binary search, array reversal
├── 10-arrays-part-2/
│   ├── subarrays, Kadane's algorithm, buy/sell stock, trapping rainwater
├── 11-sorting/
│   ├── bubble, selection, insertion, counting, std::sort & visualizer
├── 12-arrays-2d/
│   ├── spiral matrix, diagonal sum, staircase search, transpose
└── 13-char-arr-and-string/
    ├── case conversion, cstring vs std::string, anagrams, palindromes, LeetCode 1657 & 1790

🛠 Topics Covered

  • Variables & Data Types (01-variables-and-data-types)
  • Operators & Constants (02-operators)
  • Conditional Statements (03-conditional-statements)
  • Loops & Flow Control (04-loops)
  • Pattern Printing (05-patterns)
  • Functions & Scope (06-functions)
  • Pointers & Memory (08-pointers)
  • Arrays (Part 1)Searching & Basics (09-arrays-part-1)
  • Arrays (Part 2)Kadane's, Trapping Rainwater, Stock Buy/Sell (10-arrays-part-2)
  • Sorting AlgorithmsBubble, Selection, Insertion, Counting, Built-in (11-sorting)
  • 2D Arrays & MatricesSpiral Matrix, Diagonal Sum, Staircase Search (12-arrays-2d)
  • Character Arrays & StringsPalindromes, Anagrams, String Operations (13-char-arr-and-string)
  • Vectors & Dynamic Arrays (14-vectors) (in progress)
  • Bit Manipulation (15-bit-manipulation) (upcoming)
  • Object Oriented Programming (16-oops-part-1, 17-oops-part-2) (upcoming)
  • Recursion & Divide and Conquer (18-recursion-part-1, 19-recurtion-part-2, 20-divide-and-conquer) (upcoming)
  • Backtracking (21-backtracking) (upcoming)

🎯 Learning Goals

  • Master Modern C++
  • Master DSA Problem Solving Patterns
  • Optimize for Time & Space Complexity
  • Ace Technical Interviews

🚀 Progress

This repository is updated regularly as I continue learning C++ and Data Structures & Algorithms.


⚠️ Note

This repository documents my continuous learning journey. Solutions evolve from brute force to optimal as new concepts and techniques are practiced.

About

Daily C++ and DSA practice with problem solutions, notes, and interview preparation.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Contributors

Languages