Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/OmkarPathak/pygorithm
A Python module for learning all major algorithms
https://github.com/OmkarPathak/pygorithm
algorithms data-structures modules python3
Last synced: about 1 month ago
JSON representation
A Python module for learning all major algorithms
- Host: GitHub
- URL: https://github.com/OmkarPathak/pygorithm
- Owner: OmkarPathak
- License: mit
- Created: 2017-07-31T01:47:38.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-03-10T12:43:51.000Z (almost 2 years ago)
- Last Synced: 2024-10-29T15:12:56.801Z (about 1 month ago)
- Topics: algorithms, data-structures, modules, python3
- Language: Python
- Homepage:
- Size: 4.37 MB
- Stars: 4,404
- Watchers: 154
- Forks: 509
- Open Issues: 8
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
- xiao-awesome - pygorithm
- awesome-repositories - OmkarPathak/pygorithm - A Python module for learning all major algorithms (Python)
- my-awesome-learning-resources - pygorithm ✂️
README
Pygorithm
=========.. image:: https://img.shields.io/packagist/l/doctrine/orm.svg
:target: https://github.com/OmkarPathak/pygorithm/blob/master/LICENSE
:alt: Packagist.. image:: http://pepy.tech/badge/pygorithm
:target: http://pepy.tech/project/pygorithm
:alt: Downloads.. image:: https://readthedocs.org/projects/pygorithm/badge/?version=latest
:target: http://pygorithm.readthedocs.io/en/latest/?badge=latest
:alt: Documentation Status.. image:: https://img.shields.io/badge/Python-3.6-brightgreen.svg
:target: https://github.com/OmkarPathak/pygorithm
:alt: Python 3.6
.. image:: https://img.shields.io/badge/Say%20Thanks-%F0%9F%A6%89-1EAEDB.svg
:target: https://saythanks.io/to/[email protected]
:alt: Say Thanks!
.. image:: https://img.shields.io/github/contributors/omkarpathak/pygorithm.svg
:target: https://github.com/OmkarPathak/pygorithm/graphs/contributors
:alt: Contributors| A Python module to learn all the major algorithms on the go!
| Purely for educational purposes.. image:: https://images.gitads.io/pygorithm
:target: https://tracking.gitads.io/?campaign=gitads&repo=pygorithm&redirect=gitads.ioFeatures
~~~~~~~~* Super easy to use
* A very easy to understand `Documentation `_
* Get the code right in your editor
* Get time complexities on the goInstallation
~~~~~~~~~~~~* Just fire the following command in your terminal:
::
pip3 install pygorithm
- | It's that easy. If you are using Python 2.7 use pip instead. Depending on your
| permissions, you might need to use ``pip install --user pygorithm`` to install.* Or you can download the source code from `here `_, and then just install the package using
::
python setup.py install
Quick Start Guide
~~~~~~~~~~~~~~~~~* To sort your list
.. code:: python
>>> from pygorithm.sorting import bubble_sort
>>> my_list = [12, 4, 3, 5, 13, 1, 17, 19, 15]
>>> sorted_list = bubble_sort.sort(my_list)
>>> print(sorted_list)
>>> [1, 3, 4, 5, 12, 13, 15, 17, 19]* To get the code for function used
.. code:: python
>>> from pygorithm.sorting import bubble_sort
>>> code = bubble_sort.get_code()
>>> print(code)* To get the time complexity of an algorithm
.. code:: python
>>> from pygorithm.sorting import bubble_sort
>>> time_complexity = bubble_sort.time_complexities()
>>> print(time_complexity)* To see all the available functions in a module, you can just type ``help()`` with the module name as argument. For example,
.. code:: python
>>> from pygorithm import sorting
>>> help(sorting)
Help on package pygorithm.sorting in pygorithm:NAME
pygorithm.sorting - Collection of sorting methodsPACKAGE CONTENTS
bubble_sort
bucket_sort
counting_sort
heap_sort
insertion_sort
merge_sort
modules
quick_sort
selection_sort
shell_sort
Tests
~~~~~* Just type in the following command to run the tests
::python3 -m unittest
* This will run all the tests defined in the files of the ``tests/`` directory
Donation
~~~~~~~~If you have found my softwares to be of any use to you, do consider helping me pay my internet bills. This would encourage me to create many such softwares :)
- `PayPal `_
- `₹ (INR) `_