Compare commits

...

13 Commits

Author SHA1 Message Date
Silicon27
15aef8db99
Merge b6fd43f29e into f3f32ae3ca 2024-11-20 11:22:23 +01:00
pre-commit-ci[bot]
f3f32ae3ca
[pre-commit.ci] pre-commit autoupdate (#12385)
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.7.3 → v0.7.4](https://github.com/astral-sh/ruff-pre-commit/compare/v0.7.3...v0.7.4)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-11-18 22:07:12 +01:00
Christian Clauss
e3bd7721c8
validate_filenames.py Shebang python for Windows (#12371) 2024-11-15 14:59:14 +01:00
pre-commit-ci[bot]
e3f3d668be
[pre-commit.ci] pre-commit autoupdate (#12370)
* [pre-commit.ci] pre-commit autoupdate

updates:
- [github.com/astral-sh/ruff-pre-commit: v0.7.2 → v0.7.3](https://github.com/astral-sh/ruff-pre-commit/compare/v0.7.2...v0.7.3)
- [github.com/abravalheri/validate-pyproject: v0.22 → v0.23](https://github.com/abravalheri/validate-pyproject/compare/v0.22...v0.23)

* Update sudoku_solver.py

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Christian Clauss <cclauss@me.com>
2024-11-11 21:05:50 +01:00
pre-commit-ci[bot]
3e9ca92ca9
[pre-commit.ci] pre-commit autoupdate (#12349)
updates:
- [github.com/astral-sh/ruff-pre-commit: v0.7.1 → v0.7.2](https://github.com/astral-sh/ruff-pre-commit/compare/v0.7.1...v0.7.2)
- [github.com/tox-dev/pyproject-fmt: v2.4.3 → v2.5.0](https://github.com/tox-dev/pyproject-fmt/compare/v2.4.3...v2.5.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-11-04 21:09:03 +01:00
pre-commit-ci[bot]
b6fd43f29e [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2024-10-13 10:51:51 +00:00
Silicon27
1aac36937e
Update quantum_bogo_sort.py line too long error resolved 2024-10-13 12:50:37 +02:00
pre-commit-ci[bot]
4a9404f6f0 [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2024-10-13 10:47:49 +00:00
Silicon27
e12524497a
Update quantum_bogo_sort.py to be in compliance with ruff 2024-10-13 12:44:55 +02:00
pre-commit-ci[bot]
153009ea9e [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
2024-10-13 10:43:05 +00:00
Silicon27
fc5411cd44
Update quantum_bogo_sort.py to include a reference to a wiki page 2024-10-13 12:41:32 +02:00
Silicon27
3064dd13a1
Update quantum_bogo_sort.py to be in compliance with [CONTRIBUTING.md](https://github.com/TheAlgorithms/Python/blob/master/CONTRIBUTING.md) 2024-10-13 12:37:04 +02:00
Silicon27
f04ddbb9a6
Create quantum_bogo_sort.py
Added `quantum_bogo_sort`, a theoretical sorting algorithm that uses quantum mechanics to sort the elements. 

It assumes all elements are already in the superposition of sorted and unsorted states, therefore only requiring it to be returned after being called.
2024-10-13 12:14:57 +02:00
4 changed files with 39 additions and 5 deletions

View File

@ -16,7 +16,7 @@ repos:
- id: auto-walrus
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.7.1
rev: v0.7.4
hooks:
- id: ruff
- id: ruff-format
@ -29,7 +29,7 @@ repos:
- tomli
- repo: https://github.com/tox-dev/pyproject-fmt
rev: "v2.4.3"
rev: "v2.5.0"
hooks:
- id: pyproject-fmt
@ -42,7 +42,7 @@ repos:
pass_filenames: false
- repo: https://github.com/abravalheri/validate-pyproject
rev: v0.22
rev: v0.23
hooks:
- id: validate-pyproject

View File

@ -172,7 +172,7 @@ def solved(values):
def from_file(filename, sep="\n"):
"Parse a file into a list of strings, separated by sep."
return open(filename).read().strip().split(sep) # noqa: SIM115
return open(filename).read().strip().split(sep)
def random_puzzle(assignments=17):

View File

@ -1,4 +1,4 @@
#!/usr/bin/env python3
#!python
import os
try:

View File

@ -0,0 +1,34 @@
def quantum_bogo_sort(arr: list[int]) -> list[int]:
"""
Quantum Bogo Sort is a theoretical sorting algorithm that uses quantum
mechanics to sort the elements. It is not practically feasible and is
included here for humor.
More info:
https://en.wikipedia.org/wiki/Bogosort#:~:text=achieve%20massive%20complexity.-,Quantum%20bogosort,-A%20hypothetical%20sorting
:param arr: list[int] - The list of numbers to sort.
:return: list[int] - The sorted list, humorously assumed to be
instantly sorted using quantum superposition.
Example:
>>> quantum_bogo_sort([2, 1, 4, 3])
[1, 2, 3, 4]
>>> quantum_bogo_sort([10, -1, 0])
[-1, 0, 10]
>>> quantum_bogo_sort([5])
[5]
>>> quantum_bogo_sort([])
[]
"""
return sorted(
arr
) # Sorting is assumed to be done instantly via quantum superposition
if __name__ == "__main__":
my_array: list[int] = [2, 1, 4, 3]
print(quantum_bogo_sort(my_array))