Welcome to the DSA-all-Concept-Code/DSA C++ repository! This repository is a comprehensive collection of C++ code files covering various Data Structures and Algorithms (DSA) concepts. It is designed to help you learn and master DSA using C++ through practical code examples and problem-solving sessions.
Introduction Getting Started Code Files Overview Contributing License
This repository contains a wide range of C++ code files demonstrating different Data Structures and Algorithms concepts. Whether you are a beginner or an experienced programmer looking to brush up on your DSA skills, this repository will provide you with the necessary resources.
To get started with the repository, clone it to your local machine using the following command:
git clone https://github.com/yourusername/DSA-all-Concept-Code.git Navigate to the DSA C++ directory:
cd DSA-all-Concept-Code/DSA C++ You can then explore the different C++ code files to find the examples and problems you want to study.
Each file in this repository focuses on a specific DSA concept or problem. Below is an overview of the files included:
Basic Programming and Control Structures
01 First Programm.cpp
03 if-else,while loop & Lots of Patterns.cpp
04 Solving Pattern.cpp
05 Bitwise Op, For loop, Operator & variable Scoping.cpp
06 Binary & Decimal Number System.cpp
07 Problem Solving Session.cpp
08 Switch Case & Function.cpp
09 Array.cpp
10 Solving Leetcode.cpp
Dynamic Programming (DP)
102.1 Introduction to DP Top-Down Approch Memoization.cpp
102.2 Introduction to DP Bottom-Up Tabulation approch.cpp
102.3 Introduction to DP Space Optimization approch.cpp
103 Minimum Cost Climbing Stairs using DP.cpp
104 Coin Change Solve Using DP.cpp
105 Max Sum without Adjacents Using DP.cpp
106 House Robbery Problem Solve in DP.cpp
107 Cut into Segments.cpp
108 Count derangements.cpp
109 Painting Fence Algorithm in DP.cpp
110 KnapSack Problem and Solve 2-D DP Concept.cpp
Searching Algorithms
12 Binary Search intro.cpp
13 Binary Search question-1.cpp
14 Binary Search Problem.cpp
15 BookAllocation.cpp
Sorting Algorithms
16 Selection Sort.cpp
17 Bubble Sort.cpp
18 Insertion Sort.cpp
C++ Standard Template Library (STL)
19 c++ STL.cpp
Advanced Data Structures and Algorithms
20 Solving LeetCode Array.cpp
21 Solving Leet Code.cpp
22 Char Array, String and Rotated.cpp
23 2D-Array.cpp
24 Maths For DSA.cpp
25 Pointer in c++.cpp
26 Pointer part-2.cpp
27 Double Pointer.cpp
28 Reference Variable & Static vs Dynamic Memory.cpp
29 Dynamic memory Allocation of 2D Array.cpp
30 Macro, Global Var, Inline Func, Default arg.cpp
31 Learning Recursion.cpp
32 Understanding Recursion.cpp
33 Recursion and Binary Search.cpp
34 Recursion with Strings.cpp
35 Merge Sort using recursion.cpp
36 Quick Sort using Recursion.cpp
37 Recursion-Subset and SuperSequence of String.cpp
38 Phone Keypad Problem Recursion.cpp
39 Permutations Of String.cpp
40 Rat in a Maze problem.cpp
Object-Oriented Programming (OOP)
42 OOPs Concepts.cpp
43 Four Pillars Of OOPs.cpp
Linked Lists
44 Linked List & its Types.cpp
45 Linked List Question Reverse LL and Find Middle LL.cpp
49 Merge Two Sorted Linked list Leetcode question.cpp
49 Sort 0s, 1s, and 2s in Linked List.cpp
50 Check if Linked list is Palindrome Approch 1.cpp
50 Check if Linked list is Palindrome Approch 2.cpp
51 Add Two Numbers Represented by LL Leetcode problem.cpp
Stacks and Queues
54 Introduction To Stack.cpp
60 Queue in c++.cpp
Trees and Graphs
62 Binary Trees & its representation & different Types of Traversals.cpp
69 Binary Search Tree.cpp
74 Heaps in c++.cpp
79 Trie & its Implementation.cpp
85 Introduction to Graphs Creation and Implementation.cpp
86 BFS Traversal in Graph.cpp
87 DFS Traversal in Graph.cpp
92 Detect cycle in a directed graph using Kahn's algo.cpp
93 Shortest path in an unweighted graph.cpp
94 Shortest path in Directed Acyclic graph.cpp
95 Dijkstra's Algorithm.cpp
We welcome contributions to this repository! If you have any improvements, bug fixes, or new examples to add, please follow these steps:
Fork the repository. Create a new branch (git checkout -b feature-branch). Commit your changes (git commit -m 'Add some feature'). Push to the branch (git push origin feature-branch). Create a new Pull Request. License This repository is licensed under the MIT License. See the LICENSE file for more details.