Skip to main content

An educational module to demonstrate the efficiency of the bubble sort algorithm. Ideal for small sets of data. Also contains a 'speed_test' function to see how quickly your computer can sort!

Project description

Bubble Sort Python

Bubble Sort Python is a Python module for dealing with bubble sort needs in python. Although python already has an in-built sort mechanism — sort() I thought this would be a fun project!

Installation

Use the package manager pip to install Bubble Sort Python.

pip install bubble-sorter

Usage

##Basic Sorting

from bubble_sorter import *

sort(2, 1, 3, 19, 8, 4) # returns [1, 2, 3, 4, 8, 19]
sort('goose', 'duck', 'cow', 'chicken', 'horse') # returns ['chicken', 'cow', 'duck', 'goose', 'horse']
rev_sort(2, 1, 3, 19, 8, 4, order = 'desc') # returns [19, 8, 4, 3, 2, 1]

##Using Speed Test

from bubble_sorter import *

speed_test(n) # n is a positional argument and is the number of values you want to sort in the speed test. The function tells you the amount of time it took to complete the test sort.

More Options: type, range, order, verbose

speed_test(n, type = 'str') 
speed_test(n, type = 'int') # default

# type is a keyword argument. You can make it equal to 'str' or 'int' which is the default. Using type = 'str' sorts random words from a collection of the 10,000 most common English words. type = 'int' sorts n numbers between 0 and 99 if no range is specified.

speed_test(n, range = (1, 10)) # this sorts n numbers between 1 and 10 and returns the time taken

# range is a keyword argument. You can make it equal to any tuple. The default is (0, 99). It defines the range of random numbers that will be generated for the speed test.

speed_test(n, order = 'asc') # default
speed_test(n, order = 'desc')

# order is a keyword argument. You can make it equal to 'asc' (ascending order) or 'desc' (descending order). The default is 'asc'. It defines the order in which the list will be sorted. 

speed_test(n, verbose = True)
speed_test(n, verbose = False) # default

# verbose is a keyword argument. You can make it equal to True or False. The default is False and does not print the sorted list. Use it to print or not pront the sorted list. 

Support/Contributions

Raise an issue here

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bubble-sorter-2.0.6.tar.gz (3.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

bubble_sorter-2.0.6-py3-none-any.whl (3.1 kB view details)

Uploaded Python 3

File details

Details for the file bubble-sorter-2.0.6.tar.gz.

File metadata

  • Download URL: bubble-sorter-2.0.6.tar.gz
  • Upload date:
  • Size: 3.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.4

File hashes

Hashes for bubble-sorter-2.0.6.tar.gz
Algorithm Hash digest
SHA256 b81256777275722ce80d6cb9d2b9dff84acd0ee8fd0ce7dbec6c6ea5c59be5b9
MD5 f8046bbd5eaa102612d6543db5b817ab
BLAKE2b-256 8bb1f7f984e7c516d3ac6b75b79e0ce09dc83991ce2ef717608f3288cff88934

See more details on using hashes here.

File details

Details for the file bubble_sorter-2.0.6-py3-none-any.whl.

File metadata

  • Download URL: bubble_sorter-2.0.6-py3-none-any.whl
  • Upload date:
  • Size: 3.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.4

File hashes

Hashes for bubble_sorter-2.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 b3b7824405b2771fa0fc97a3e3ec07766ea8684e6fca5cf7685569c327fd6cb7
MD5 d799fd335b796746f81bbbc19c204269
BLAKE2b-256 e7b7f130b8721d41aa4575bd460d7b3534629a3ab36d0198178934af3370223a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page