{"id":19764616,"url":"https://github.com/sarmad426/dsa-python","last_synced_at":"2026-06-08T18:32:44.887Z","repository":{"id":222061969,"uuid":"756144155","full_name":"Sarmad426/DSA-Python","owner":"Sarmad426","description":"Data Structures and Algorithms using python from basics to adavnce featuring Leetcode problems.","archived":false,"fork":false,"pushed_at":"2024-10-16T18:40:48.000Z","size":130,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-28T10:38:31.851Z","etag":null,"topics":["algorithms","data-structures-and-algorithms","leetcode","leetcode-solutions","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Sarmad426.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-02-12T03:33:04.000Z","updated_at":"2024-10-16T18:40:51.000Z","dependencies_parsed_at":"2025-02-28T03:51:04.412Z","dependency_job_id":"d1319819-6140-4ea5-8825-23bb8bafda64","html_url":"https://github.com/Sarmad426/DSA-Python","commit_stats":null,"previous_names":["sarmad426/dsa-python"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Sarmad426/DSA-Python","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sarmad426%2FDSA-Python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sarmad426%2FDSA-Python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sarmad426%2FDSA-Python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sarmad426%2FDSA-Python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Sarmad426","download_url":"https://codeload.github.com/Sarmad426/DSA-Python/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sarmad426%2FDSA-Python/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34075956,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-08T02:00:07.615Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["algorithms","data-structures-and-algorithms","leetcode","leetcode-solutions","python"],"created_at":"2024-11-12T04:14:27.144Z","updated_at":"2026-06-08T18:32:44.864Z","avatar_url":"https://github.com/Sarmad426.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Data Structure and Algorithms using **Python**\n\nThis 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)\n\n## Table of Contents\n\n- [Data Structures](#data-structures)\n- [Algorithms](#algorithms)\n\n## Data Structures\n\nA data structure is a particular way of organizing and storing data in a computer so that it can be accessed and modified efficiently.\n\n### 1. Linked List\n\n- Implementation of a singly linked list\n- Implementation of a doubly linked list\n- Operations: insertion, deletion, traversal, etc.\n\n### 2. Stack\n\n- Implementation of a stack using arrays and linked lists\n- Operations: push, pop, peek, etc.\n\n### 3. Queue\n\n- Implementation of a queue using arrays and linked lists\n- Operations: enqueue, dequeue, peek, etc.\n\n### 4. Tree\n\n- Implementation of various tree data structures: binary tree, binary search tree, AVL tree, etc.\n- Tree traversal algorithms: inorder, preorder, postorder\n- Operations: insertion, deletion, searching, etc.\n\n### 5. Graph\n\n- Implementation of graph data structure\n- Graph traversal algorithms: BFS, DFS\n- Shortest path algorithms: Dijkstra's algorithm, Bellman-Ford algorithm\n- Minimum spanning tree algorithms: Prim's algorithm, Kruskal's algorithm\n\n## Algorithms\n\nAn algorithm is a step-by-step procedure or formula for solving a problem.\n\n### 1. Sorting Algorithms\n\n- Bubble Sort\n- Selection Sort\n- Insertion Sort\n- Merge Sort\n- Quick Sort\n- Heap Sort\n\n### 2. Searching Algorithms\n\n- Linear Search\n- Binary Search\n- Depth-First Search (DFS)\n- Breadth-First Search (BFS)\n\n### 3. [Greedy Algorithms](/1-Basics/2-Algorithms/2-Algo-types/1-Greedy-algo/)\n\n- Implementation of greedy algorithms\n- Examples: Minimum spanning tree, Huffman coding, etc.\n\n### 4. [Divide and Conquer](/1-Basics/2-Algorithms/2-Algo-types/2-Divide-conquer/)\n\n- Implementation of divide and conquer algorithms\n- Examples: Binary search, merge sort, etc.\n\n### 5. [Dynamic Programming](/1-Basics/2-Algorithms/2-Algo-types/3-Dynamic-programming/)\n\n- Implementation of dynamic programming solutions for various problems\n- Examples: Fibonacci series, knapsack problem, longest common subsequence, etc.\n\n### How to Use This Repository\n\n- **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.\n\n- **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.\n\nAll 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)\n\n### Learning Resources\n\n**Python**: \u003chttps://github.com/sarmad426/Python\u003e\n\n**Python Projects**: \u003chttps://github.com/Sarmad426/Python-projects\u003e\n\nBack end **API** development using **Fast API**: \u003chttps://github.com/Sarmad426/FastAPI\u003e\n\nLearn **AI** and **Data Science**: \u003chttps://github.com/Sarmad426/AI\u003e\n\nLearn **Generative AI**: \u003chttps://github.com/Sarmad426/Generative-AI\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsarmad426%2Fdsa-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsarmad426%2Fdsa-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsarmad426%2Fdsa-python/lists"}