Welcome to the Data Structures and Algorithms (DSA) repository! This repository contains C++ implementations for various data structures and algorithms, organized by day. The code includes fundamental concepts and practical problems designed to enhance your understanding and problem-solving skills in DSA.
Day | Topics |
---|---|
Day 01 | - Introduction to Programming - Write Your First C++ Program - Conditionals and Loops |
Day 02 | - Functions - Operators - Patterns |
Day 03 | - Set K-th Bit - Check Set Bit - Number System - Reverse Integer - Temperature |
Day 04 | - Array Operations - Count 0 & 1 - Extreme Print Array - Linear Search - Max Number - Reverse Array - Vector Operations |
Day 05 | - Pair Sum - Sort 0 & 1 (Dutch National Flag Problem) - Triplet - Union & Intersection - Unique Element |
Day 06 | - 2-D Array Operations - Max & Min in 2D Array - Transpose Matrix - Vector of Vectors |
Day 07 | - Move Negative Numbers - Sort Colors |
Day 09 | - Binary Search - Find First Occurrence - Last Occurrence - Peak Element in Mountain Array |
Day 10 | - Matrix Operations - Square Root of a Number |
Day 11 | - Binary Search on Nearly Sorted Array - Divide of 2 Numbers (Binary Search) - Odd Occurring Element |
Day 12 | - Strings - Characters |
Day 13 | - Minimum Time Difference - Remove All Occurrences - Remove Adjacent Duplicates - Valid Palindrome - Palindromic Substrings |
Day 14 | - Longest Common Prefixes - Reverse Vowels - Isomorphic String - Reorganize String - Reverse Only Letters - Valid Anagram |
Day 15 | - String Compression - String to Integer - Find Index of First Occurrence - Group Anagrams - Longest Palindromic Substring - Zigzag Conversion |
Day 16 | - Integer to Roman - Largest Number |
Day 17 | - Pointers |
Day 18 | - Count Primes - Pointers with Function |
Day 19 | - GCD - LCM - Modular Exponentiation - Slow Exponentiation |
Day 20 | - Double Pointer |
Day 21 | - Practice Questions |
Day 22 | - Factorials - Counting |
Day 23 | - Fibonacci Series - Power Calculation - Reverse Counting |
Day 24 | - Minimum in Array - Climbing Stairs - Print Array - Print Digit of Number - Remove All Occurrences |
Day 25 | - Array Sorted or Not - B Switch Recursive - Maximize the Cost Segment - Subsequence String |
Day 26 | - Buy and Sell Stock - Coin Change - Wildcard Matching - House Robber |
Day 27 | - Adding Strings - Checking Palindrome - Reverse String - Convert Integer to English Words |
Day 28 | - Max Sum of Non-adjacent Elements - Min Cost Ticket - Min Dice Roll with Target - Perfect Square |
Day 29 | - Merge Sort |
Day 30 | - Quick Sort |
Day 31 | - Permutation in String |
Day 32 | - Rat in Maze |
Day 33 | - Generate Parentheses - N Queens |
Day 34 | - Count Inversions - Letter Combination Phone Number |
Day 35 | - Combination Sum - Combination Sum II - Max Subarray Sum - Permutation II |
Day 36 | - Beautiful Arrangement - Distributive Repeating Integers |
Day 37 | - Constructor - OOP Basics - Getter and Setter |
Day 38 | - Inheritance |
Day 39 | - Polymorphism |
Day 40 | - Global and Local Variables - Macros - Static Keyword |
Day 41 | - Inline Functions - Private Constructor - Virtual Functions |