⚠️ Important Note: This repository is a live, ongoing learning journey and is currently in progress. The listed topics represent my long-term roadmap. Some directories or files may be empty or under construction as I take the time to learn and implement each concept.
Welcome to the RenSyntax repository dedicated to mastering C++ and Data Structures & Algorithms (DSA). This repository serves as a structured timeline of my learning journey, moving from basic syntax to complex algorithmic paradigms.
The project right now is organized logically into three major phases:
-
01_cpp_fundamentals/- Core language concepts including basic syntax, Object-Oriented Programming (OOPs), pointers, references, and Dynamic Memory Allocation (DMA). -
02_data_structures/- Implementations of standard data structures like Linked Lists, Stacks, Queues, Trees, and Graphs. -
03_algorithms/- Standard problem-solving paradigms including Searching/Sorting, Recursion, Backtracking, and Dynamic Programming.
Before running the code, you need to ensure you have Git and a C++ compiler installed on your machine. Follow the guide below for your operating system:
⚠️ Important Note for Linux Users: The command below is specifically for Debian/Ubuntu-based distributions (like Linux Mint or Pop!_OS). If you are using a different distribution (like Arch, Fedora, or openSUSE), packages and commands will vary. Please check your specific distribution's documentation online to install Git and the base development tools.
Run the following command for Debian/Ubuntu-based distributions
sudo apt update && sudo apt install build-essential git -y-
For Git: Download and install Git for Windows.
-
For C++ Compiler: The easiest way to get g++ on Windows is by downloading MinGW-w64 via MSYS2 or installing the "Desktop development with C++" workload via Visual Studio Community.
⚠️ Important Note: Make sure bothGitandMinGWare added to your system's environment PATH variables.
macOS makes this incredibly simple via the Terminal. Running this command will prompt you to install Apple's Command Line Tools, which includes both Git and the Clang C++ compiler (g++ alias):
xcode-select --installOpen terminal in a folder(the one you would like to clone the repo in) and run the following command in your respective terminal/konsole:
git clone https://github.com/rensyntax/cpp-dsa-mastery.gitRun the following command to navigate to following files of repo:
cd cpp-dsa-mastery/01_cpp_fundamentals/basic_syntaxNote: replace
01_cpp_fundamentals/basic_syntaxto whatever location you want to navigate.
Run the following command in your respective terminal:
g++ main.cpp -o mainNote: replace
main.cppwith the name of the file you would like to run.
-
Complete core
C++concepts required fordata structures & algorithms. -
Implement and understand all fundamental
data structures -
Solve 200+ standard
DSAproblems across standard paradigms. -
Maintain clean, readable, and well-commented/documented code.
📝 Final Reflective Note: You might notice that some of the code inside the
01_cpp_fundamentals/directory looks a bit messy, unoptimized, or even slightly incorrect by industry standards. This is entirely intentional! That code represents the absolute beginning of my C++ journey. Instead of rewriting or deleting it to look perfect, I have chosen to leave it exactly as it was written. This serves as a permanent, documented benchmark so I can look back and visually track how much my coding skills, logic, and efficiency improve over time.
This project is open-source and licensed under the MIT License - see the LICENSE file for details.
Thank you for reading, have a nice day ahead. 👋
-- RenSyntax