/ pygorithm Public

A Python module for learning all major algorithms

You must be signed in to change notification settings

# OmkarPathak/pygorithm

## Folders and files

NameName
Last commit message
Last commit date

# Pygorithm

A Python module to learn all the major algorithms on the go!
Purely for educational purposes

## Features

• Super easy to use
• A very easy to understand Documentation
• Get the code right in your editor
• Get time complexities on the go

## Installation

• 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

```>>> 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
```>>> from pygorithm.sorting import bubble_sort
>>> code = bubble_sort.get_code()
>>> print(code)```
• To get the time complexity of an algorithm
```>>> 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,
```>>> from pygorithm import sorting
>>> help(sorting)
Help on package pygorithm.sorting in pygorithm:

NAME
pygorithm.sorting - Collection of sorting methods

PACKAGE 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 :)

A Python module for learning all major algorithms

## Packages 0

No packages published