All Algorithms implemented in Python the-algorithms.com/
Go to file
nith2001 4621b0bb4f
Improved Graph Implementations (#8730)
* Improved Graph Implementations

Provides new implementation for graph_list.py and graph_matrix.py along with pytest suites for each. Fixes #8709

* Graph implementation style fixes, corrections, and refactored tests

* Helpful docs about graph implementation

* Refactored code to separate files and applied enumerate()

* Renamed files and refactored code to fail fast

* Error handling style fix

* Fixed f-string code quality issue

* Last f-string fix

* Added return types to test functions and more style fixes

* Added more function return types

* Added more function return types pt2

* Fixed error messages
2023-05-31 22:06:12 +02:00
.github Fix broken links to Gitter Community (Fixes: #8197) (#8546) 2023-03-26 18:20:47 +02:00
arithmetic_analysis Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
audio_filters Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
backtracking Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
bit_manipulation Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
blockchain pre-commit: Upgrade psf/black for stable style 2023 (#8110) 2023-02-01 18:44:54 +05:30
boolean_algebra Update and_gate.py (#8690) 2023-05-10 21:38:52 +12:00
cellular_automata Update game_of_life.py (#8703) 2023-05-10 21:34:36 +12:00
ciphers Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
compression pre-commit: Upgrade psf/black for stable style 2023 (#8110) 2023-02-01 18:44:54 +05:30
computer_vision Revert "Add LeNet Implementation in PyTorch (#7070)" (#8621) 2023-04-08 06:22:26 +05:30
conversions Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
data_structures Update permutations.py (#8102) 2023-05-31 12:56:59 +12:00
digital_image_processing Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
divide_and_conquer Fix type error in strassen_matrix_multiplication.py (#8784) 2023-05-30 12:37:54 +12:00
dynamic_programming Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
electronics Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
file_transfer Update receive_file.py (#8541) 2023-03-31 16:08:13 +02:00
financial Fix docstring in present_value.py (#8702) 2023-05-01 06:29:42 +05:30
fractals pre-commit: Upgrade psf/black for stable style 2023 (#8110) 2023-02-01 18:44:54 +05:30
fuzzy_logic Misc fixes across multiple algorithms (#6912) 2022-10-16 10:55:38 +05:30
genetic_algorithm Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
geodesy pre-commit: Upgrade psf/black for stable style 2023 (#8110) 2023-02-01 18:44:54 +05:30
graphics Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
graphs Improved Graph Implementations (#8730) 2023-05-31 22:06:12 +02:00
greedy_methods Added minimum waiting time problem solution using greedy algorithm (#8701) 2023-05-01 12:23:03 +02:00
hashes Revamp md5.py (#8065) 2023-04-01 22:05:01 +02:00
knapsack pre-commit: Upgrade psf/black for stable style 2023 (#8110) 2023-02-01 18:44:54 +05:30
linear_algebra Added rank of matrix in linear algebra (#8687) 2023-05-31 17:03:02 +02:00
machine_learning Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
maths Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
matrix Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
networking_flow clean of unnecessary checks, imports, calls (#7993) 2022-11-21 00:00:27 +13:00
neural_network Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
other Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
physics Correct ruff failures (#8732) 2023-05-14 22:03:13 +01:00
project_euler Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
quantum Rename quantum_random.py.DISABLED.txt to quantum_random.py (#8601) 2023-04-02 10:18:19 +05:30
scheduling Make some ruff fixes (#8154) 2023-03-01 17:23:33 +01:00
scripts Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
searches Correct ruff failures (#8732) 2023-05-14 22:03:13 +01:00
sorts Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
strings Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
web_programming Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
.gitattributes Create .gitattributes for Cross OS compatibility (#3410) 2020-10-17 07:25:25 +02:00
.gitignore chore: update .gitignore (#6263) 2022-07-23 07:56:59 +05:30
.gitpod.yml Change gitpod configuration for python3. (#1827) 2020-04-07 12:20:08 +02:00
.pre-commit-config.yaml Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
CONTRIBUTING.md Fix broken links to Gitter Community (Fixes: #8197) (#8546) 2023-03-26 18:20:47 +02:00
DIRECTORY.md Fix type error in strassen_matrix_multiplication.py (#8784) 2023-05-30 12:37:54 +12:00
LICENSE.md LICENSE: Year change (#5920) 2022-03-16 23:40:48 +08:00
pyproject.toml Add more ruff rules (#8767) 2023-05-26 09:34:17 +02:00
README.md Fix broken links to Gitter Community (Fixes: #8197) (#8546) 2023-03-26 18:20:47 +02:00
requirements.txt Revert "Add LeNet Implementation in PyTorch (#7070)" (#8621) 2023-04-08 06:22:26 +05:30

The Algorithms - Python

Gitpod Ready-to-Code Contributions Welcome Discord chat Gitter chat
GitHub Workflow Status pre-commit code style: black

All algorithms implemented in Python - for education

Implementations are for learning purposes only. They may be less efficient than the implementations in the Python standard library. Use them at your discretion.

Getting Started

Read through our Contribution Guidelines before you contribute.

Community Channels

We are on Discord and Gitter! Community channels are a great way for you to ask questions and get help. Please join us!

List of Algorithms

See our directory for easier navigation and a better overview of the project.