{"id":13571274,"url":"https://github.com/msambol/dsa","last_synced_at":"2025-04-04T08:30:45.588Z","repository":{"id":42110168,"uuid":"475996214","full_name":"msambol/dsa","owner":"msambol","description":"Data structures and algorithms in X minutes. Code examples from my YouTube channel.","archived":false,"fork":false,"pushed_at":"2024-10-08T19:38:34.000Z","size":129,"stargazers_count":436,"open_issues_count":0,"forks_count":98,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-11-05T04:33:52.242Z","etag":null,"topics":["algorithms","b-trees","bellman-ford-algorithm","binary-search","breadth-first-search","computer-science","data-structures","depth-first-search","dijkstras-algorithm","floyd-warshall-algorithm","ford-fulkerson-algorithm","kruskals-algorithm","maximum-flow","minimum-spanning-trees","prims-algorithm","red-black-trees","search-algorithms","shortest-path-algorithms","sorting-algorithms","tree-traversal"],"latest_commit_sha":null,"homepage":"https://youtube.com/michaelsambol","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/msambol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","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":"2022-03-30T18:04:45.000Z","updated_at":"2024-11-04T09:36:25.000Z","dependencies_parsed_at":"2024-01-14T03:51:05.270Z","dependency_job_id":"3fdf93f7-81c8-447b-b921-bea85bc06ab9","html_url":"https://github.com/msambol/dsa","commit_stats":null,"previous_names":["msambol/dsa"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msambol%2Fdsa","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msambol%2Fdsa/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msambol%2Fdsa/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/msambol%2Fdsa/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/msambol","download_url":"https://codeload.github.com/msambol/dsa/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247146881,"owners_count":20891582,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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","b-trees","bellman-ford-algorithm","binary-search","breadth-first-search","computer-science","data-structures","depth-first-search","dijkstras-algorithm","floyd-warshall-algorithm","ford-fulkerson-algorithm","kruskals-algorithm","maximum-flow","minimum-spanning-trees","prims-algorithm","red-black-trees","search-algorithms","shortest-path-algorithms","sorting-algorithms","tree-traversal"],"created_at":"2024-08-01T14:01:00.426Z","updated_at":"2025-04-04T08:30:45.169Z","avatar_url":"https://github.com/msambol.png","language":"Python","readme":"# Data Structures \u0026 Algorithms\n\nCode examples from my [YouTube channel](https://www.youtube.com/@MichaelSambol).\nThe code may differ on some videos, as I've added to this retroactively.\n\n## Topics \n\n| Topic | Description | Playlist | Code | \n| ----- | ----------- | -------- | -----|\n| CS Tutorials | All of my computer science tutorials in one playlist. | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZPKwb4XPB1sG7S6kNpN9JJo) | [Code](https://github.com/msambol/dsa) |\n| Analyzing Algorithms | Time complexity of algorithms including 𝚯, O, and 𝛀. | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZMxejjIyFHWa-4nKg6sdoIv) | [Code](https://github.com/msambol/dsa/tree/master/analyzing_algorithms) |\n| Data Structures | The building blocks! | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO2D89q42-y8voxIJKpB4oR) | [Code](https://github.com/msambol/dsa/tree/master/data_structures) |\n| Minimum Spanning Trees | Greedy algorithms for finding a minimum spanning tree in a weighted, undirected graph. Prim's = pick a node. Kruskal's = iterate through edges. | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZObEi3Hf6lmyW-CBfs7nkOV) | [Code](https://github.com/msambol/dsa/tree/master/minimum_spanning_trees) | \n| Shortest Path Algos | Dijkstra's = shortest path from one node to all nodes. Bellman–Ford = shortest path from one node to all nodes, negative edges allowed (not negative cycles). Floyd–Warshall = shortest path between all pairs of vertices, negative edges allowed (not negative cycles). | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO-Y-H3xIC9DGSfVYJng9Yw) | [Code](https://github.com/msambol/dsa/tree/master/shortest_path) | \n| Maximum Flow Algos | Algorithms that compute the maximum flow in a flow network. Ford–Fulkerson = greedy. | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZPxifnyXjQVU1bhU4b4_Ts2) | [Code](https://github.com/msambol/dsa/tree/master/maximum_flow) |\n| Search Algos | Searching arrays and tree data structures. | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZMIAJn8M6At9CjZ0Wu0B31d) | [Code](https://github.com/msambol/dsa/tree/master/search) |\n| Sort Algos | Sorting unordered arrays. | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOZSbGAXAPIq1BeUf4j20pl) | [Code](https://github.com/msambol/dsa/tree/master/sort) |\n| Tree Traversal Algos | Traversing binary search trees. | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZO1JC2RgEi04nLy6D-rKk6b) | [Code](https://github.com/msambol/dsa/tree/master/tree_traversal) |\n| Red-Black Trees | Self-balancing binary search trees with red and black nodes. | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNqDI8qfOZgzbqahCUmUEin) | [Code](https://github.com/msambol/dsa/blob/master/trees/red_black_tree.py) |\n| AVL Trees | Self-balancing binary search trees with nodes that have a balance factor of -1, 0, or 1. Balance factor = height of left child - height of right child. | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZOUFgdIeOPuH6cfSnNRMau-) | [Code](https://github.com/msambol/dsa/blob/master/trees/avl_tree.py) |\n| B-Trees | Self-balancing search trees with nodes that may have more than two children. Well suited for databases and file systems. | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNFPPv98DjTdD9X6UI9KMHz) | [Code](https://github.com/msambol/dsa/blob/master/trees/b_tree.py) |\n| Heaps | Nearly complete binary trees useful for priority queues (min–heaps) and heap sort (max–heaps). | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNsyqgPW-DNwUeT8F8uhWc6) | [Code](https://github.com/msambol/dsa/blob/master/data_structures/heap.py) |\n| Fibonacci Heaps | Data structure that implements a mergeable heap. | [Playlist](https://www.youtube.com/playlist?list=PL9xmBV_5YoZNkwWDXcSiZjMgacw2P0U2j) | [Code](https://github.com/msambol/dsa/blob/master/data_structures/fibonacci_heap.py) |\n\n## Additional Learning\n\n* [Introduction to Algorithms (CLRS)](https://a.co/d/7oRsCT2)\n* [Algorithms](https://a.co/d/icfHd1S)\n* [Big-O Cheat Sheet](https://www.bigocheatsheet.com/)\n* [Python Time Complexities](https://wiki.python.org/moin/TimeComplexity)\n* [Coding Interview University](https://github.com/jwasham/coding-interview-university)\n\n## Languages\n\nSubtitles are posted in the languages below. If I missed yours, send me a note.\n\n* Arabic\n* Bangla\n* Chinese\n* Croatian\n* Czech\n* Danish\n* Dutch\n* English\n* French\n* German\n* Hebrew\n* Hindi\n* Indonesian\n* Italian\n* Japanese\n* Korean\n* Marathi\n* Polish\n* Portuguese\n* Russian\n* Spanish\n* Swahili\n* Tamil\n* Telugu\n* Turkish\n* Ukrainian\n* Urdu\n* Vietnamese\n","funding_links":[],"categories":["最终复习","Python"],"sub_categories":["4. 专注"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsambol%2Fdsa","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmsambol%2Fdsa","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmsambol%2Fdsa/lists"}