GFG 160 is a structured roadmap designed to help you master Data Structures and Algorithms (DSA) by solving 160 handpicked problems over 160 days. This course eliminates the need for random SDE sheets by providing a topic-wise learning approach that ensures a well-organized and effective learning experience. By following this roadmap, you will systematically develop your problem-solving skills and build a strong DSA foundation.
This repository contains well-organized solutions for each problem, ensuring a structured and efficient learning process.
- Aspiring software engineers preparing for coding interviews
- Students looking to strengthen their DSA concepts
- Developers aiming to enhance problem-solving abilities
- Anyone passionate about competitive programming
- 160 Handpicked DSA Problems – Each problem comes with a detailed article and video explanation for better understanding.
- 90 Bonus Problems – Additional practice problems with video solutions, totaling 250 problems.
- Completion Certificate – Get a certificate upon successfully completing the course, validating your expertise.
- Comprehensive Concept Coverage – Covers key topics such as Arrays, Strings, Sorting, Searching, Hashing, Graphs, DP, and more.
- Interview Readiness – Perfect for coding interviews and technical assessments.
- Structured Learning – Follow a systematic and optimized problem-solving path for maximum efficiency.
- Career Roadmap Sessions – Gain insights into trending tech fields like DevOps, Full Stack Development, Software Testing, and more.
GFG160-160_DAYS_OF_PROBLEM_SOLVING/
│── Topic_Name/ # Topic-wise folders (e.g., Arrays, Strings, etc.)
│ ├── Day_XXX_Problem_Name/ # Each day's problem in a separate folder
│ │ ├── Problem_Statement.md # Problem description in Markdown format
│ │ ├── Solution.java # Java solution
│ │ ├── Solution.py # Python solution
│── .gitignore # Ignore unnecessary files
│── README.md # This file
- Arrays – Lay the Foundation (Days 1–13)
- Strings – Master Text Processing (Days 14–20)
- Sorting – Organize Data Efficiently (Days 21–27)
- Searching – Find What You Need Fast (Days 28–35)
- Matrix – Unlock the Power of 2D Data (Days 36–41)
- Hashing – Unlock Data Relationships (Days 42–49)
- Two Pointer Technique – Simplify Complex Problems (Days 50–61)
- Prefix Sum – Solve Cumulative Problems (Days 62–66)
- Linked List – Manage Dynamic Data (Days 67–76)
- Backtracking – Explore Recursive Problem-Solving (Days 77–79)
- Trees – Build and Traverse Hierarchical Data (Days 80–92)
- Heap – Manage Prioritized Data (Days 93–96)
- Stack – Simplify Operations (Days 97–105)
- Queue & Deque – FIFO Operations (Days 106–107)
- Dynamic Programming (DP) – Optimize Complex Problems (Days 108–133)
- Greedy – Make Optimal Choices (Days 134–137)
- Graphs – Explore Connectivity and Paths (Days 138–152)
- Tries – Efficient Prefix Tree Searching (Days 153–155)
- Bit Manipulation – Master Binary Operations (Days 156–160)
- Clone the repository:
git clone https://github.com/NaveenakrishnanS/GfG160-160_Days_of_Problem_Solving.git
- Navigate to the problem folder:
cd GFG160-160_DAYS_OF_PROBLEM_SOLVING/1_Arrays/Day_001_Second_Largest
- Read the Problem_Statement.md.
- Implement your solution in the preferred language.
- Compare with the provided solutions.
javac Solution.java # Compile the Java file
java Solution # Run the compiled Java file
python Solution.py # Run the Python solution
Contributions are welcome! Feel free to submit solutions in additional programming languages or optimize existing ones.
For any queries or discussions, feel free to connect via LinkedIn or open an issue in this repository.
Start your problem-solving journey today with GFG 160 and elevate your DSA expertise! 🚀