Skip to main content

Unified fast radix sort for int, float, and string

Project description

shansort

Unified fast radix sort for int, float, and string in Python

shansort provides a blazing fast sorting function implemented in C++ with pybind11, using radix sort optimized for integers, floating-point numbers, and ASCII strings.

How It Works

shansort uses radix sort algorithms specialized for three data types:

  • Integers: Uses a 64-bit radix sort based on XOR with the sign bit to handle negative numbers correctly.
  • Floats: Converts floats to sortable 64-bit keys via bit manipulations that preserve the order, then applies radix sort.
  • Strings: Performs LSD (least significant digit) radix sort on ASCII characters from the end of the strings, handling variable lengths efficiently.

Before sorting, the algorithm checks if the data is already sorted ascending or descending to optimize performance.

This approach achieves high speed by avoiding comparison-based sorting and leveraging bitwise operations and counting sort passes.

Features

  • Fast radix sort specialized for int64, double, and ASCII strings
  • Handles sorted, reverse sorted, and unsorted data efficiently
  • Python interface: shansort.sort(list) supports int, float, or string lists
  • Up to 3.7x to 5.3x faster than Python built-in sorted() on large datasets

Installation

pip install shansort


import shansort

# Sort integers
ints = [5, 3, 9, 1]
print(shansort.sort(ints))  # [1, 3, 5, 9]

# Sort floats
floats = [3.14, 2.71, 1.62, 0.0]
print(shansort.sort(floats))  # [0.0, 1.62, 2.71, 3.14]

# Sort strings (ASCII only)
strings = ["banana", "apple", "cherry"]
print(shansort.sort(strings))  # ['apple', 'banana', 'cherry']


## Metrics
Benchmarking with 10,000,000 elements on a typical modern CPU:
| Data Type | Python built-in `sorted()` | `shansort.sort()` | Speedup Factor (times faster) |
| --------- | -------------------------- | ----------------- | ----------------------------- |
| Integers  | 9.78 seconds               | 1.84 seconds      | \~5.3x                        |
| Floats    | 8.82 seconds               | 1.98 seconds      | \~4.5x                        |
| Strings   | 15.60 seconds              | 4.25 seconds      | \~3.7x                        |




Algorithm Limits & Data Ranges
Supports 64-bit signed integers (int64_t) and 64-bit doubles (double).

Sorts ASCII strings only (no Unicode).

Uses 8 passes of 8 bits each (64-bit radix), so limited to 64-bit data.

Works correctly and efficiently within these ranges.



## Test Code

import random
import time
import shansort

def benchmark_sort():
    N = 10**7

    # Generate random data once, reuse for all runs for consistency
    data_int = [random.randint(-1_000_000, 1_000_000) for _ in range(N)]
    data_float = [random.uniform(-1e5, 1e5) for _ in range(N)]
    data_str = [''.join(random.choices('abcdefghijklmnopqrstuvwxyz', k=10)) for _ in range(N)]

    for dtype, data in [('int', data_int), ('float', data_float), ('string', data_str)]:
        builtin_times = []
        custom_times = []
        correctness_passes = 0

        print(f"\nBenchmarking {dtype} sort with {N:,} elements over 20 runs:")

        for run in range(5):
            # Built-in sort
            builtin_data = list(data)
            t0 = time.time()
            builtin_sorted = sorted(builtin_data)
            t1 = time.time()

            # Custom C++ sort
            custom_data = list(data)
            t2 = time.time()
            custom_sorted = shansort.sort(custom_data)
            t3 = time.time()

            # Store timings
            builtin_times.append(t1 - t0)
            custom_times.append(t3 - t2)

            # Verify correctness
            if builtin_sorted == custom_sorted:
                correctness_passes += 1
            else:
                print(f"Run {run+1}: ❌ Sort correctness FAIL")

        print(f"Built-in sorted() average time: {sum(builtin_times)/5:.2f} seconds")
        print(f"C++ fast_sort() average time: {sum(custom_times)/5:.2f} seconds")
        print(f"Correctness passed in {correctness_passes}/5 runs")

benchmark_sort()

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

shansort-0.1.5-pp311-pypy311_pp73-win_amd64.whl (60.7 kB view details)

Uploaded PyPyWindows x86-64

shansort-0.1.5-pp310-pypy310_pp73-win_amd64.whl (59.8 kB view details)

Uploaded PyPyWindows x86-64

shansort-0.1.5-pp39-pypy39_pp73-win_amd64.whl (59.8 kB view details)

Uploaded PyPyWindows x86-64

shansort-0.1.5-pp38-pypy38_pp73-win_amd64.whl (59.8 kB view details)

Uploaded PyPyWindows x86-64

shansort-0.1.5-cp313-cp313-win_amd64.whl (61.4 kB view details)

Uploaded CPython 3.13Windows x86-64

shansort-0.1.5-cp313-cp313-win32.whl (58.0 kB view details)

Uploaded CPython 3.13Windows x86

shansort-0.1.5-cp313-cp313-manylinux_2_34_x86_64.whl (71.3 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

shansort-0.1.5-cp313-cp313-macosx_11_0_arm64.whl (61.3 kB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

shansort-0.1.5-cp312-cp312-win_amd64.whl (61.4 kB view details)

Uploaded CPython 3.12Windows x86-64

shansort-0.1.5-cp312-cp312-win32.whl (58.0 kB view details)

Uploaded CPython 3.12Windows x86

shansort-0.1.5-cp312-cp312-manylinux_2_34_x86_64.whl (71.2 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

shansort-0.1.5-cp312-cp312-macosx_11_0_arm64.whl (61.3 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

shansort-0.1.5-cp311-cp311-win_amd64.whl (60.9 kB view details)

Uploaded CPython 3.11Windows x86-64

shansort-0.1.5-cp311-cp311-win32.whl (57.3 kB view details)

Uploaded CPython 3.11Windows x86

shansort-0.1.5-cp311-cp311-manylinux_2_34_x86_64.whl (71.5 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

shansort-0.1.5-cp311-cp311-macosx_11_0_arm64.whl (62.8 kB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

shansort-0.1.5-cp310-cp310-win_amd64.whl (60.1 kB view details)

Uploaded CPython 3.10Windows x86-64

shansort-0.1.5-cp310-cp310-win32.whl (56.7 kB view details)

Uploaded CPython 3.10Windows x86

shansort-0.1.5-cp310-cp310-manylinux_2_34_x86_64.whl (70.5 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

shansort-0.1.5-cp310-cp310-macosx_11_0_arm64.whl (61.5 kB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

shansort-0.1.5-cp39-cp39-win_amd64.whl (60.1 kB view details)

Uploaded CPython 3.9Windows x86-64

shansort-0.1.5-cp39-cp39-win32.whl (56.7 kB view details)

Uploaded CPython 3.9Windows x86

shansort-0.1.5-cp39-cp39-manylinux_2_34_x86_64.whl (70.6 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.34+ x86-64

shansort-0.1.5-cp39-cp39-macosx_11_0_arm64.whl (61.6 kB view details)

Uploaded CPython 3.9macOS 11.0+ ARM64

shansort-0.1.5-cp38-cp38-win_amd64.whl (59.9 kB view details)

Uploaded CPython 3.8Windows x86-64

shansort-0.1.5-cp38-cp38-win32.whl (56.5 kB view details)

Uploaded CPython 3.8Windows x86

shansort-0.1.5-cp38-cp38-manylinux_2_34_x86_64.whl (907.8 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.34+ x86-64

shansort-0.1.5-cp38-cp38-macosx_11_0_arm64.whl (61.1 kB view details)

Uploaded CPython 3.8macOS 11.0+ ARM64

File details

Details for the file shansort-0.1.5-pp311-pypy311_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-pp311-pypy311_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 52bca001234ae0aee6f779e1d99245630155174a8506c06a6abc90800de268a4
MD5 e859b002412f0210681f91860da67cfa
BLAKE2b-256 6c22921893f1826fbde8e9e22552fb70faaa613ac7b77dea1c7ee28ad1753761

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-pp310-pypy310_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-pp310-pypy310_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 a44078588e37e258f0544bb5306760a511d50bdde5b18b655ca329252aa26ece
MD5 6688003387db0985c8a9c74b469b81b6
BLAKE2b-256 69e62f9e0896893f17ea706db27d210264641a2ac3529d0d8000ec29def498c8

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-pp39-pypy39_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-pp39-pypy39_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 2a2c43424fed3ff5c0ba0fd99ae0ec40c68ed9bb0b6d2c8518fb0f3be4a4918a
MD5 5c46c92053f3080937403f2b8f2455d0
BLAKE2b-256 0429ab1e5c1635df83ef6fa45485a0d7d3ef5eec4d33ce15e8e57977d4657d0a

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-pp38-pypy38_pp73-win_amd64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-pp38-pypy38_pp73-win_amd64.whl
Algorithm Hash digest
SHA256 defe43afcd072f3128047ec53d92d9ceaacade36eaf6d546b5a18547a869aec7
MD5 7569b3aea1d40db0e84dd07eb8d10f0a
BLAKE2b-256 b10e9dbd88f0c535b2ee29fb11174333f77c158145f029d18dad468808ad1377

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp313-cp313-win_amd64.whl.

File metadata

  • Download URL: shansort-0.1.5-cp313-cp313-win_amd64.whl
  • Upload date:
  • Size: 61.4 kB
  • Tags: CPython 3.13, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 cea48d1cde4c42160e25bd3d0df77b4423f77687fad89c844dc3ad8b7c7c665a
MD5 7f2f1f95f8b27aa986096694fae2595a
BLAKE2b-256 fe21d78ba4607022f5af0577304e3ec1a52da40638625776d5ed5d208b58b79d

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp313-cp313-win32.whl.

File metadata

  • Download URL: shansort-0.1.5-cp313-cp313-win32.whl
  • Upload date:
  • Size: 58.0 kB
  • Tags: CPython 3.13, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp313-cp313-win32.whl
Algorithm Hash digest
SHA256 e453a1eacc56603ce3c6e692509f7aabc6100118a6ee02907b4d145cedf08d8d
MD5 418927252cdc586cad6e007c460cb918
BLAKE2b-256 974d51a124ac5ffca11bc8ea76e8341582c34c5d2ec6d6e9a2c4d217af81e6eb

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 92bd41a2ae9ba8759f37ada55f9eceadb1c4f8ed3a63fe7bb28deb166a8a124b
MD5 d85d79a52dd467641751d0f3b26e690a
BLAKE2b-256 5419f89d83ad570b65e60c4ed343123e6869ad53975f592864f3a82b6666a482

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 c7dd7d4d55d281dd6c74edb9e8b93b3f81203212e20f06055f53d7837918aa3d
MD5 d2274bb8537425fb7b713ef9b93ffd33
BLAKE2b-256 10e44d5a1830d32204a0aaafdf75218689d2506edc444328b99249ca14ff28f8

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: shansort-0.1.5-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 61.4 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 213fde01253e063fb4742b2c742aff0f7e2f1ce655dbbd9585ec0d865eb667fb
MD5 72dac16b424900951869f5ba910f7119
BLAKE2b-256 ebfd4eeffcdc16004aeaa5c1de7aeb3056276abc0efc0ee919b9b89deb8cad67

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp312-cp312-win32.whl.

File metadata

  • Download URL: shansort-0.1.5-cp312-cp312-win32.whl
  • Upload date:
  • Size: 58.0 kB
  • Tags: CPython 3.12, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp312-cp312-win32.whl
Algorithm Hash digest
SHA256 87a68869f62b46e575bc1b0071d13da341454ae619d14e93fe789a0e2764f566
MD5 adf397fdbe4006ccd4416a1b226b8e3d
BLAKE2b-256 dad4aa071fe0617b9b265371c09731e61027aba3c639a275ffa0125478877049

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 8241decac65b00752fbe1092817b70dca50a8fc449e457862605ba3e6ce46ed2
MD5 f6f1d2b010af6160616419127c18e78f
BLAKE2b-256 86507deaa48090f2dfb92d3fb3943d10afb85ca3da56cde8338d09101b9f7edd

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 7dae1dbd96d2ecd3a49653f75508b8c01a37bce2531fe39de746d123514486bb
MD5 571c889b3e98195fd077182a9ff3bab0
BLAKE2b-256 ac19c78841f3e219f52ed910580d5dc2a9f9b4eb50f100f1623d7203c6fc9710

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp311-cp311-win_amd64.whl.

File metadata

  • Download URL: shansort-0.1.5-cp311-cp311-win_amd64.whl
  • Upload date:
  • Size: 60.9 kB
  • Tags: CPython 3.11, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 770d41acd7d4525cbdc563a032b4026f4e50b094d2308364e677f659b061dfe2
MD5 75aea0c4da327979b105ee3ad07b73dc
BLAKE2b-256 ec620128fad5fecba66db37ba3ce20632f0d4304b527532d137f5ca618111a16

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp311-cp311-win32.whl.

File metadata

  • Download URL: shansort-0.1.5-cp311-cp311-win32.whl
  • Upload date:
  • Size: 57.3 kB
  • Tags: CPython 3.11, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp311-cp311-win32.whl
Algorithm Hash digest
SHA256 07401ec455f310a73305956530adc66fa5ce483c4a615e62ce3c8a9411bcff2d
MD5 45f88b2b7f84114e927981f364666092
BLAKE2b-256 ef3e55ea71e04546c7a6147c5b26c0b325f1a826b43ab47f2745164fb8b78586

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 9c6d5d295a8abbfadd9461b53361ab09bb374dd5da3e398f059a43ef7865496b
MD5 a9b00714aa1b246360e083f750abff7e
BLAKE2b-256 92986ab02a95b0e228d01475af24704eaace7a3dfea2237f5116481a004dd830

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 512389f7cbb54d23731dd23c8bd0fd2973006e6c659477e2b2aa894d16fca4c1
MD5 0c13dd377ab7d2b53bc117d3d6c079b0
BLAKE2b-256 28df6796e1722b1dae7462c377d263fb20b9b19e76188e34e8139345bf1e7e8c

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp310-cp310-win_amd64.whl.

File metadata

  • Download URL: shansort-0.1.5-cp310-cp310-win_amd64.whl
  • Upload date:
  • Size: 60.1 kB
  • Tags: CPython 3.10, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 ffbb596c9ca5ce023d288d102f89f8070c69fe2c548c396b9f341c38255bd907
MD5 ffa18cf01adac2c421836d3b885c3c93
BLAKE2b-256 59e96bfb33b53b506e31e9f812f4691f78c258b49bd26d9f78ab91ff734411bb

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp310-cp310-win32.whl.

File metadata

  • Download URL: shansort-0.1.5-cp310-cp310-win32.whl
  • Upload date:
  • Size: 56.7 kB
  • Tags: CPython 3.10, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp310-cp310-win32.whl
Algorithm Hash digest
SHA256 b502bd6fd98d42c18f3eb17d3210662b1fe6c8f238d21a43c867897f86a0606d
MD5 45c5eb1494e033a8bce8e2836838b7ed
BLAKE2b-256 4a790fe075abb2336c7b94fcdebf24e8b8ca796c496b96a0958fd2d7c4631a0f

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 86704b201e26ba36c4d9e8d14863f80fac00128d27fad69b63f653f757017ddf
MD5 77e43ecfbfe8960b4762562054488b93
BLAKE2b-256 990e21d39e90272d134aa628651f8df51da6d8129a6554397127730fdb79b86b

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 62cee3ea591f0b45401bd9c2507f6157223a9981284deae02a02ac334990e7cc
MD5 39f0f32d1d73a0a71825b08be55edcda
BLAKE2b-256 e2a990dcbaf5fb30218fb37183ceea15d41c24aebeec13e01b58b0e0b31bcc95

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: shansort-0.1.5-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 60.1 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 69d4685d5f53af050ae289f7b2f5d667a23d06022934aadeb3501eca3c5dd101
MD5 f74575815860ae18e81f7e92160360f9
BLAKE2b-256 2544513fe97df4368521cea0c38199f8e8430cbaf07c937167175bd1b0bcd33e

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp39-cp39-win32.whl.

File metadata

  • Download URL: shansort-0.1.5-cp39-cp39-win32.whl
  • Upload date:
  • Size: 56.7 kB
  • Tags: CPython 3.9, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp39-cp39-win32.whl
Algorithm Hash digest
SHA256 ddc4e4f97c4a682eadc2a1be37f95b2c931aa60ce70b2e54eb0a03332089fcd4
MD5 fb137f972404ea4d07a7d324030ec471
BLAKE2b-256 059f9f06e6bf9383cc390c009fba3843833c7ed41b1729c40f5ccf37d859dad8

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp39-cp39-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp39-cp39-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 e645fe8dd375fc2e4d640144ab9e2e8620f8a905a76c6b6ae5c7d948df8b20d1
MD5 5e177d298d97fe56704803406fc39770
BLAKE2b-256 1e355b824055134baa0614971b4935cb185c707a8400e6416d2b822fe5352f5e

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp39-cp39-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp39-cp39-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 9f2cd9e6068c9b0b403547361ae15c38c9d0ae240da055cdfa7663996687622f
MD5 92f1dd5f2679b06dee5f24eef9df7c28
BLAKE2b-256 d9b25e47decdf2d9b4e4492fb3c25bf9641ce7e4b39fb04b8fddb3d408b7445f

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: shansort-0.1.5-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 59.9 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 920f99a3aa10bc92020d8234fb080387521c4d2dbfa31854b6a9ead389196221
MD5 a5c0f0432c353ee220cf2a4cb0515f04
BLAKE2b-256 382bf16ba95d347f2e90dace948e4c1528fb84e638e992758740442f1b05d4db

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp38-cp38-win32.whl.

File metadata

  • Download URL: shansort-0.1.5-cp38-cp38-win32.whl
  • Upload date:
  • Size: 56.5 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.2

File hashes

Hashes for shansort-0.1.5-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 25b67c9368399610eaed4e9a9d4ee43e5c3c6decf724338a84ae14c5d004e69c
MD5 0d6527f1d0aba68a8c5119b621a8c8a0
BLAKE2b-256 9979454d8da040c9587e1dab5cd7f9005f670b1a4e3c5bf814b8400ae1c3de69

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp38-cp38-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp38-cp38-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 f926776112c40e436e804c8e110e2f16bc631faefaeb609eca0bb3fdc7448a60
MD5 f4f4ee3e281b62a9c9fbf6a8b820dad1
BLAKE2b-256 bf3d52959385aff46b26a3ac2d0bee350c4c8427b4049b7c6a8bc3d141a6f6ff

See more details on using hashes here.

File details

Details for the file shansort-0.1.5-cp38-cp38-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for shansort-0.1.5-cp38-cp38-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e09b741f41046aa7833bc4ff1f0a062f946d6655b585248cc999949384c0047b
MD5 e0d418a3cd6d18f01b87431b2131ef1d
BLAKE2b-256 e2e6814622570f23d9eb95b119ecb193210c1e13bc928afcfe79af99fc52db99

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