GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com β€” GitHub - alihassan-coder/DSA-With-Python: A comprehensive collection of Data Structures and Algorithms implemented in Python, featuring clean code, detailed explanations, and problem-solving examples to strengthen coding and interview skills.

BranchesTags
Open more actions menu

Latest commit

 

History

9 Commits
9 Commits

Folders and files

NameName
Last commit message
Last commit date
All code
All code
 
 
Books
Books
 
 
Images
Images
 
 
README.md
README.md
 
 

Repository files navigation

πŸš€ My DSA Journey with Python

Welcome to my Data Structures and Algorithms (DSA) journey repository! I'm excited to document my progress, organize my resources, and share my daily efforts as I learn and improve.


🌟 About This Challenge

I have started learning DSA with a focus on Python because:

  • It simplifies complex concepts.
  • It’s beginner-friendly and widely used on platforms like LeetCode.

My goal is to dedicate 20 minutes daily to this challenge. I’ll cover DSA concepts step by step, solve problems, and keep everything neatly organized here.


πŸ“‚ Folder Structure

To keep my learning resources organized and easy to access, I’ve structured the repository as follows:

DSA-Challenge/
β”‚
β”œβ”€β”€ πŸ“š Books/          # All DSA-related books and study materials
β”‚   β”œβ”€β”€ book1.pdf
β”‚   β”œβ”€β”€ book2.pdf
β”‚   └── ...
β”‚
β”œβ”€β”€ πŸ’» Code/           # All Python code for solved problems
β”‚   β”œβ”€β”€ Day1/
β”‚   β”œβ”€β”€ Day2/
β”‚   └── ...
β”‚
β”œβ”€β”€ πŸ–ΌοΈ Images/         # Visuals like flowcharts, diagrams, and patterns
└── README.md          # This file to track my journey

πŸš€ DSA Syllabus with Python

Welcome to the Data Structures and Algorithms (DSA) syllabus! This file serves as a roadmap and progress tracker for my DSA journey using Python. Let’s break it down into well-structured topics.


1️⃣ Introduction to DSA

  • Importance of DSA
  • Problem-solving approach
  • Big-O Notation: Understanding Time and Space Complexity

2️⃣ Basic Programming Constructs

  • Variables and Data Types
  • Conditional Statements (if-else)
  • Loops (for, while)
  • Functions and Recursion Basics

3️⃣ Flowcharts and Pseudocode

  • Understanding Flowcharts with diagrams
  • Writing Pseudocode for algorithms

4️⃣ Arrays

  • Introduction to Arrays
  • Operations: Traversing, Insertion, Deletion, Search
  • Solving array-based problems

5️⃣ Strings

  • Introduction to Strings
  • String Manipulation Techniques
  • Common Problems:
    • Reverse a String
    • Check for Palindrome

6️⃣ Patterns and Loops

  • Printing patterns using loops:
    • Star Patterns ⭐
    • Number Patterns πŸ”’
    • Pyramid and Diamond Patterns ⛰️

7️⃣ Recursion

  • Basics of Recursion 🧩
  • Classic Problems:
    • Factorial
    • Fibonacci Series
    • Tower of Hanoi

8️⃣ Searching Algorithms

  • Linear Search
  • Binary Search (Iterative and Recursive)
  • Searching in Rotated Arrays

9️⃣ Sorting Algorithms

  • Bubble Sort 🫧
  • Selection Sort
  • Insertion Sort
  • Advanced Sorting:
    • Merge Sort
    • Quick Sort

πŸ”Ÿ Linked List

  • Singly Linked List
  • Doubly Linked List
  • Circular Linked List
  • Solving Linked List Problems:
    • Reversing a Linked List
    • Detecting Cycles

1️⃣1️⃣ Stacks and Queues

  • Stack (LIFO): Operations (Push, Pop, Peek)
  • Queue (FIFO): Enqueue, Dequeue
  • Applications: Parentheses Matching, Balanced Brackets

1️⃣2️⃣ Trees

  • Basics of Trees 🌳
  • Binary Trees and Binary Search Trees (BST)
  • Tree Traversals:
    • Inorder
    • Preorder
    • Postorder

1️⃣3️⃣ Graphs

  • Introduction to Graphs
  • Representations:
    • Adjacency Matrix
    • Adjacency List
  • Traversals: BFS (Breadth-First Search) and DFS (Depth-First Search)

1️⃣4️⃣ Hashing

  • Hash Maps and Hash Tables
  • Collision Handling Techniques
  • Common Problems:
    • Frequency Counting
    • Two Sum Problem

1️⃣5️⃣ Dynamic Programming (DP)

  • Understanding DP Concepts
  • Memoization vs Tabulation
  • Solving DP Problems:
    • Longest Common Subsequence
    • 0/1 Knapsack

1️⃣6️⃣ Greedy Algorithms

  • Understanding the Greedy Approach
  • Classic Problems:
    • Coin Change Problem
    • Activity Selection

1️⃣7️⃣ Backtracking

  • Concept of Backtracking πŸ”„
  • Problems like:
    • N-Queens Problem
    • Sudoku Solver
    • Rat in a Maze

1️⃣8️⃣ Bit Manipulation

  • Basics of Bitwise Operations
  • Solving Problems using Bit Manipulation

1️⃣9️⃣ Heaps and Priority Queues

  • Min-Heap and Max-Heap
  • Applications of Heaps
  • Priority Queues in Problem Solving

2️⃣0️⃣ Advanced Topics

  • Tries: Prefix Trees
  • Segment Trees
  • Disjoint Set Union (Union-Find)
  • KMP Algorithm: String Pattern Matching

πŸ“… Commitment

  • Dedicate 20 minutes every day to learning DSA.
  • Solve problems, implement algorithms, and keep improving!

πŸš€ Let’s Grow Together!
Feel free to explore this repository and learn alongside me. Stay consistent and let’s master DSA! 🎯

About

A comprehensive collection of Data Structures and Algorithms implemented in Python, featuring clean code, detailed explanations, and problem-solving examples to strengthen coding and interview skills.

Resources

Readme
Activity

Stars

0 stars

Watchers

1 watching

Forks

0 forks
Report repository

Releases

Packages

Contributors

Languages

You are visitor 01402503 β€” GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800Γ—600. No cookies required.