π Welcome to my LeetCode Toolkit! This repository is a curated collection of my experiences and learnings in the realm of algorithmic challenges. Dive into a variety of solutions and tools, Here are some key highlights:
π Graph Algorithms in C++ | π C Programming Examples | π Python Solutions Downloader Script |
---|---|---|
Explore graph theory with implementations of algorithms like BFS, DFS, Dijkstraβs, Bellman-Ford, and Floyd-Warshall. Includes a tree visualizer for custom input and visualization. |
Features a Magic Square Checker and a Hash-Table implementation. π For more examples of C coding techniques, take a look at these mini-repositories: πCbits, and πΎTextAnalysisC. |
Enhance your LeetCode experience with a Python script for downloading accepted solutions. Check out the LeetCode Downloader for efficient solution archiving. |
π While Iβve been actively engaged on LeetCode, Iβve stopped uploading new solutions to this repository. For the most current view of my work, techniques, and progress, please visit my LeetCode profile: Dor-sketch.
Leveraging Selenium WebDriver, the script automates both the login process and the navigation on the LeetCode website. It meticulously parses submission history, and identifies accepted solutions, which are then downloaded and saved locally. The script also updates a comprehensive list of problems and solutions for quick reference.
The submission history is parsed from the LeetCode website, and accepted solutions are downloaded and saved locally.
Suggestions and contributions to enhance this downloader are welcome! Please feel free to fork the repository, make improvements, and submit a pull request.
Graph algorithms are a cornerstone of computer science, which Iβve delved into and implemented in this repository. These algorithms play a pivotal role in tackling complex problems across various network structures like social networks π, computer networks π», and biological networks π§¬. Below is a succinct overview of some key graph algorithms and their real-world applications, demonstrated in Graph.cpp:
Depth-First Search (DFS) π³: This algorithm performs a deep traversal of a graph, exploring as far down each branch as possible before backtracking. Itβs instrumental in solving puzzles, analyzing networks, and in game playing algorithms.
Breadth-First Search (BFS) π: This algorithm broadly traverses a graph, visiting all neighbors at the current depth level before moving to nodes at the next depth level. Widely used in shortest path algorithms and social networking applications for finding connections within a certain number of steps.
Dijkstraβs Algorithm π£οΈ: A renowned algorithm for finding the shortest path between nodes in a weighted graph. Essential in GPS systems for determining the shortest driving routes.
Bellman-Ford Algorithm π: Computes shortest paths from a single source vertex to all other vertices in a weighted graph, even handling negative weight edges.
Floyd-Warshall Algorithm π: A dynamic programming approach for finding shortest paths in a weighted graph with positive or negative edge weights, without negative cycles.
These algorithms are implemented in my repository, showcasing my grasp of graph theory and its practical applications in solving real-world problems.
make
command to compile the program../GraphApp
.Add your graph in a .txt
file and see the results:
Test 1 passed.
0
βββ 1
βββ 2
Test 2 passed.
0
βββ 1
βββ 2
βββ 3
βββ 4
Test 3 passed.
0
βββ 1
| βββ 3
| βββ 4
βββ 2
βββ 5
βββ 6
Test 4 passed.
0
βββ 1
βββ 2
βββ 3
BFS Algorithms tests example
You can find a comprehensive list of problems and solutions in problems.md.
New solutions are added regularly via the LeetCode Downloader. Old solutions are available in the Hard, Medium, and Easy directories like so:
.
βββ Easy/
β βββ Arrays/
β βββ Strings/
β βββ ...
βββ Medium/
β βββ LinkedList/
β βββ Trees/
β βββ ...
βββ Hard/
βββ Graphs/
βββ Dynamic Programming/
βββ ...
Although this is a personal repository primarily for self-learning, feedback or improvement suggestions are welcome. Please open an issue or submit a pull request.
This project is open source and available under the MIT License.