Skip to main content

Algorithm Selector

Publish to PyPI PyPI License Python Version Code Size Last Commit Issues Pull Requests

Overview

This repository contains a comprehensive collection of algorithms across various domains including computational algorithms, data structures, machine learning, cryptographic methods, and more. Each algorithm is implemented with a focus on clarity, efficiency, and adherence to best practices.

Table of Contents

Installation

To get started with this repository, clone it to your local machine using:

git clone https://github.com/thomasthaddeus/AlgorithmSelector.git
cd algorithm-repository

Install the required dependencies:

pip install -r requirements.txt

Usage

Each algorithm is encapsulated in its own class and can be used independently. Here's an example of how to use an algorithm from the repository:

from src.data_structures.binary_search_tree import BinarySearchTree

# Example usage
bst = BinarySearchTree()
bst.insert(3)
bst.insert(1)
bst.insert(4)
print(bst.search(1))  # Output: True or False

Directory Structure

The repository is organized as follows:

  • src/: Contains the source code for all algorithms.
    • computational/: Computational algorithms like FFT, Monte Carlo, etc.
    • data_structures/: Common data structures like AVL Tree, Heap, etc.
    • ml/: Machine learning algorithms like k-means, linear regression, etc.
    • ... (other directories following a similar structure)
  • tests/: Contains unit tests for each algorithm.
  • docs/: Documentation related to the algorithms.
  • scripts/: Useful scripts like setup or build scripts.
  • requirements.txt: List of dependencies for the project.
  • pyproject.toml: Project metadata and configuration.

Testing

To run the tests, navigate to the root directory of the project and run:

python -m unittest discover -s tests

Contributing

Contributions to the repository are welcome! Here's how you can contribute:

  1. Fork the repository and create your branch from main.
  2. Write your algorithm or improvement.
  3. Ensure your code passes all existing tests and add new tests if necessary.
  4. Submit a pull request.

Please ensure your code adheres to the existing style conventions and add relevant documentation.

License

This project is licensed under the MIT License.

Release files for AlgorithmSelector 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for AlgorithmSelector 1.1.0
File Size Uploaded
algorithmselector-1.1.0.tar.gz 41.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for AlgorithmSelector 1.1.0
File Interpreter ABI Platform
algorithmselector-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 45.2 kB

Release files / algorithmselector-1.1.0.tar.gz

Download URL algorithmselector-1.1.0.tar.gz
Size 41.1 kB
Tags Source
SHA-256 checksum
How to use checksums
fd36adc99675d244aa9a65884370941055587974349adc35b67a1949b0dd14be
BLAKE2b-256 checksum
How to use checksums
1d773a49a8a54527f423e4ec55378399f7b5f527bc1c5bd8926a85d9c5b80e6d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.7.1 CPython/3.12.1 Linux/6.2.0-1018-azure

Release files / algorithmselector-1.1.0-py3-none-any.whl

Download URL algorithmselector-1.1.0-py3-none-any.whl
Size 4.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
204d06bf43752df4ae7715b17f6d0b9c7c39dfa14ae9401fe2964d2788435de9
BLAKE2b-256 checksum
How to use checksums
63909d95ddfd5a43fbfe04d41345f2aee6ca05ea56379e5e78fd7b1488872df0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via poetry/1.7.1 CPython/3.12.1 Linux/6.2.0-1018-azure

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page