Skip to content

Latest commit

 

History

173 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🧠 DSA Using Python

A comprehensive collection of Data Structures and Algorithms implemented in Python. This repository is designed to help learners understand core DSA concepts through clean, beginner-friendly, and well-structured implementations.

📑 Table of Contents

  • About
  • Topics Covered
  • Repository Structure
  • Features
  • Learning Objectives
  • Getting Started
  • Author
  • License

🎯 Learning Objectives

  • Build a strong foundation in Data Structures and Algorithms.
  • Practice writing clean and efficient Python code.
  • Understand the core concepts behind common data structures.
  • Strengthen problem-solving skills.
  • Prepare for coding interviews and technical assessments.

📚 Topics Covered

Topic Description
Arrays Basic array operations and manipulation
Strings Common string algorithms
Searching Linear and Binary Search
Sorting Fundamental sorting algorithms
Stack Stack implementations and applications
Queue Queue implementations
Linked List Basic linked list operations
Trees Tree traversal algorithms
Recursion Recursive problem solving
Hashing Hash maps and frequency counting
Heap Min Heap and Max Heap operations
Graph BFS, DFS, and graph representation
Dynamic Programming Classic optimization problems

📂 Repository Structure

DSA-Using-Python/

├── Arrays/

├── Strings/

├── Searching/

├── Sorting/

├── Stack/

├── Queue/

├── LinkedList/

├── Trees/

├── Recursion/

├── Hashing/

├── Heap/

├── Graph/

├── DynamicProgramming/

├── README.md

└── LICENSE


🌟 What You'll Learn

  • Array manipulation
  • Searching techniques
  • Sorting algorithms
  • Recursive thinking
  • Stack and Queue operations
  • Linked List fundamentals
  • Tree traversals
  • Graph traversals
  • Dynamic Programming basics
  • Time and space complexity awareness

✨ Features

  • Beginner-friendly implementations
  • Clean and readable Python code
  • Topic-wise organized structure
  • Covers fundamental DSA concepts
  • Suitable for learning and practice
  • Useful for interview preparation

▶️ Getting Started

Clone the repository:

git clone https://github.com/notlexius-glitch/DSA-Using-Python.git

Move into the project:

cd DSA-Using-Python

Run any file:

python Arrays/reverse_array.py


👨‍💻 Author

Praval Yadav

GitHub: @notlexius-glitch


📜 License

This project is licensed under the MIT License.

LeetCode Topics

Tree

0110-balanced-binary-tree
0235-lowest-common-ancestor-of-a-binary-search-tree
0257-binary-tree-paths

Depth-First Search

0110-balanced-binary-tree
0235-lowest-common-ancestor-of-a-binary-search-tree
0257-binary-tree-paths
0310-minimum-height-trees

Binary Tree

0110-balanced-binary-tree
0235-lowest-common-ancestor-of-a-binary-search-tree
0257-binary-tree-paths

Array

0229-majority-element-ii
0239-sliding-window-maximum
0240-search-a-2d-matrix-ii
0260-single-number-iii
0268-missing-number
0274-h-index
0275-h-index-ii
0283-move-zeroes
0284-peeking-iterator
0287-find-the-duplicate-number
0289-game-of-life
0300-longest-increasing-subsequence
0307-range-sum-query-mutable
0312-burst-balloons
0313-super-ugly-number
0322-coin-change

Hash Table

0229-majority-element-ii
0242-valid-anagram
0264-ugly-number-ii
0268-missing-number
0290-word-pattern
0299-bulls-and-cows

Sorting

0229-majority-element-ii
0242-valid-anagram
0268-missing-number
0274-h-index
0295-find-median-from-data-stream

Counting

0229-majority-element-ii
0299-bulls-and-cows

Boyer–Moore Majority Vote Algorithm

0229-majority-element-ii

Math

0231-power-of-two
0233-number-of-digit-one
0258-add-digits
0263-ugly-number
0264-ugly-number-ii
0268-missing-number
0273-integer-to-english-words
0279-perfect-squares
0282-expression-add-operators
0292-nim-game
0313-super-ugly-number
0319-bulb-switcher
1927-sum-game
3622-check-divisibility-by-digit-sum-and-product

Bit Manipulation

0231-power-of-two
0260-single-number-iii
0268-missing-number
0287-find-the-duplicate-number

Recursion

0231-power-of-two
0233-number-of-digit-one
0234-palindrome-linked-list
0273-integer-to-english-words

Dynamic Programming

0233-number-of-digit-one
0264-ugly-number-ii
0279-perfect-squares
0300-longest-increasing-subsequence
0312-burst-balloons
0313-super-ugly-number
0322-coin-change

Linked List

0234-palindrome-linked-list

Two Pointers

0234-palindrome-linked-list
0283-move-zeroes
0287-find-the-duplicate-number
0295-find-median-from-data-stream

Stack

0234-palindrome-linked-list
0316-remove-duplicate-letters

Binary Search Tree

0235-lowest-common-ancestor-of-a-binary-search-tree
0240-search-a-2d-matrix-ii
0268-missing-number
0275-h-index-ii
0278-first-bad-version
0287-find-the-duplicate-number
0300-longest-increasing-subsequence

Binary Lifting

0235-lowest-common-ancestor-of-a-binary-search-tree

Lowest Common Ancestor

0235-lowest-common-ancestor-of-a-binary-search-tree

Queue

0239-sliding-window-maximum

Sliding Window

0239-sliding-window-maximum

Heap (Priority Queue)

0239-sliding-window-maximum
0264-ugly-number-ii
0295-find-median-from-data-stream

Monotonic Queue

0239-sliding-window-maximum

Range Minimum/Maximum Query

0239-sliding-window-maximum

Divide and Conquer

0240-search-a-2d-matrix-ii
0307-range-sum-query-mutable

Matrix

0240-search-a-2d-matrix-ii
0289-game-of-life

String

0242-valid-anagram
0257-binary-tree-paths
0273-integer-to-english-words
0282-expression-add-operators
0290-word-pattern
0299-bulls-and-cows
0301-remove-invalid-parentheses
0306-additive-number
0316-remove-duplicate-letters
1927-sum-game

Backtracking

0257-binary-tree-paths
0282-expression-add-operators
0301-remove-invalid-parentheses
0306-additive-number

Simulation

0258-add-digits
0289-game-of-life

Number Theory

0258-add-digits

Counting Sort

0274-h-index

Interactive

0278-first-bad-version

Breadth-First Search

0279-perfect-squares
0301-remove-invalid-parentheses
0310-minimum-height-trees
0322-coin-change

Knapsack Problem

0279-perfect-squares
0322-coin-change

Complete Knapsack

0279-perfect-squares
0322-coin-change

Design

0284-peeking-iterator
0295-find-median-from-data-stream
0307-range-sum-query-mutable

Iterator

0284-peeking-iterator

Pigeonhole Principle

0287-find-the-duplicate-number

Floyd's Cycle Finding Algorithm

0287-find-the-duplicate-number

Brainteaser

0292-nim-game
0319-bulb-switcher

Minimax

0292-nim-game

Game Theory

0292-nim-game
1927-sum-game

Nim Game

0292-nim-game

Impartial Game

0292-nim-game

Data Stream

0295-find-median-from-data-stream

Longest Increasing Subsequence

0300-longest-increasing-subsequence

Binary Indexed Tree

0307-range-sum-query-mutable

Segment Tree

0307-range-sum-query-mutable

Sqrt Decomposition

0307-range-sum-query-mutable

Graph Theory

0310-minimum-height-trees

Topological Sort

0310-minimum-height-trees

Greedy

0316-remove-duplicate-letters
1927-sum-game

Monotonic Stack

0316-remove-duplicate-letters

About

A collection of Data Structures and Algorithms problems solved in Python with simple, easy-to-understand, and optimized solutions.

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages