Welcome to my DSA journey! This repository contains my notes, code implementations, and problem-solving progress as I follow the comprehensive "Free DSA with Python Course" by Code and Debug.
- Playlist Link: Data Structures and Algorithms with Python | Free DSA Course
- Instructor: Code and Debug
- Language: Python 3.x
- Tools: VS Code / Jupyter Notebook
- Goal: Master core concepts, improve logic building, and prepare for technical interviews.
├── 01_Basics/ # Complexity Analysis, Python Refresher
├── 02_Arrays_and_Lists/ # Static vs Dynamic Arrays, Sliding Window
├── 03_Linked_Lists/ # Singly, Doubly, and Circular Linked Lists
├── 04_Stacks_and_Queues/ # Implementation and Interview Questions
├── 05_Recursion/ # Basic to Advanced Recursion problems
├── 06_Sorting_Searching/ # Binary Search, Merge Sort, Quick Sort
├── 07_Trees/ # Binary Trees, BST, Traversals
├── 08_Graphs/ # BFS, DFS, Dijkstra’s
├── 09_Dynamic_Programming/ # Memoization & Tabulation
├── 10_Hashing/ # Hashing
├── Leet_Code_Problems_Solution/ # Leet Code Practice
└── Problems_Solution/ # Solution to problems solved during the series
| Topic | Status | Exercises Completed |
|---|---|---|
| Basics & Time Complexity | Completed | 3/3 |
| Array / Strings | ⚪ Not Started | 0/10 |
| Linked List | ⚪ Not Started | 0/5 |
| Stacks & Queues | ⚪ Not Started | 0/5 |
| Searching & Sorting | ⏳ In Progress | 1/8 |
| Trees | ⚪ Not Started | 0/0 |
- Asymptotic Analysis: Understanding Big O, Omega, and Theta notations.
- Memory Management: How Python handles lists and objects in memory.
- Optimized Problem Solving: Moving from Brute Force to Optimized solutions.
- Clone the repo:
git clone https://github.com/YOUR_USERNAME/dsa-python.git
- Navigate to a topic:
cd 02_Arrays_and_Lists
- Run a script:
python3 two_sum.py
⭐ Don't forget to star this repository if you find my notes or solutions helpful!
Made by Jawad Ahmed Khawaja with ❤️.