Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sarmad426/dsa-python
Data Structures and Algorithms using python from basics to adavnce featuring Leetcode problems.
https://github.com/sarmad426/dsa-python
algorithms data-structures-and-algorithms leetcode leetcode-solutions python
Last synced: 15 days ago
JSON representation
Data Structures and Algorithms using python from basics to adavnce featuring Leetcode problems.
- Host: GitHub
- URL: https://github.com/sarmad426/dsa-python
- Owner: Sarmad426
- Created: 2024-02-12T03:33:04.000Z (12 months ago)
- Default Branch: main
- Last Pushed: 2024-10-16T18:40:48.000Z (3 months ago)
- Last Synced: 2024-11-12T04:14:25.447Z (2 months ago)
- Topics: algorithms, data-structures-and-algorithms, leetcode, leetcode-solutions, python
- Language: Python
- Homepage:
- Size: 127 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
Awesome Lists containing this project
README
# Data Structure and Algorithms using **Python**
This repository aims to provide a comprehensive collection of data structures and algorithms implementations in Python. Following along with this repository requires fundamental knowledge of programming in python, for that checkout this Repository. [Python](https://github.com/sarmad426/Python)
## Table of Contents
- [Data Structures](#data-structures)
- [Algorithms](#algorithms)## Data Structures
A data structure is a particular way of organizing and storing data in a computer so that it can be accessed and modified efficiently.
### 1. Linked List
- Implementation of a singly linked list
- Implementation of a doubly linked list
- Operations: insertion, deletion, traversal, etc.### 2. Stack
- Implementation of a stack using arrays and linked lists
- Operations: push, pop, peek, etc.### 3. Queue
- Implementation of a queue using arrays and linked lists
- Operations: enqueue, dequeue, peek, etc.### 4. Tree
- Implementation of various tree data structures: binary tree, binary search tree, AVL tree, etc.
- Tree traversal algorithms: inorder, preorder, postorder
- Operations: insertion, deletion, searching, etc.### 5. Graph
- Implementation of graph data structure
- Graph traversal algorithms: BFS, DFS
- Shortest path algorithms: Dijkstra's algorithm, Bellman-Ford algorithm
- Minimum spanning tree algorithms: Prim's algorithm, Kruskal's algorithm## Algorithms
An algorithm is a step-by-step procedure or formula for solving a problem.
### 1. Sorting Algorithms
- Bubble Sort
- Selection Sort
- Insertion Sort
- Merge Sort
- Quick Sort
- Heap Sort### 2. Searching Algorithms
- Linear Search
- Binary Search
- Depth-First Search (DFS)
- Breadth-First Search (BFS)### 3. [Greedy Algorithms](/1-Basics/2-Algorithms/2-Algo-types/1-Greedy-algo/)
- Implementation of greedy algorithms
- Examples: Minimum spanning tree, Huffman coding, etc.### 4. [Divide and Conquer](/1-Basics/2-Algorithms/2-Algo-types/2-Divide-conquer/)
- Implementation of divide and conquer algorithms
- Examples: Binary search, merge sort, etc.### 5. [Dynamic Programming](/1-Basics/2-Algorithms/2-Algo-types/3-Dynamic-programming/)
- Implementation of dynamic programming solutions for various problems
- Examples: Fibonacci series, knapsack problem, longest common subsequence, etc.### How to Use This Repository
- **Learning**: If you are new to DSA, start by exploring the theoretical documents to build a strong foundation. Then, dive into the code examples and implement data structures and algorithms from scratch.
- **Leetcode Interview Problems**: Use the Leetcode interview questions section to practice and improve your problem-solving skills. Understand the logic behind each solution and try to solve them independently first.
All of the practical examples are written using **python** programming. If you wanna use **C++** we also have an amazing resource for this. Checkout this repository [DSA-C++](https://github.com/sarmad426/DSA)
### Learning Resources
**Python**:
**Python Projects**:
Back end **API** development using **Fast API**:
Learn **AI** and **Data Science**:
Learn **Generative AI**: