mirror of
https://github.com/theoludwig/programming-challenges.git
synced 2025-05-18 12:02:53 +02:00
feat: usage of ESM modules imports (instead of CommonJS) (#14)
This commit is contained in:
@ -0,0 +1,7 @@
|
||||
# sorting-algorithms/python/bubble-sort
|
||||
|
||||
Created by [@Divlo](https://github.com/Divlo) on 29 June 2021.
|
||||
|
||||
| Algorithm | Best Case | Average Case | Worst Case |
|
||||
| ----------------------------------------------------------- | ----------- | ------------ | ----------- |
|
||||
| [Bubble sort](https://wikipedia.org/wiki/Bubble_sort) | O(n) | O(n²) | O(n²) |
|
@ -0,0 +1,24 @@
|
||||
from typing import List
|
||||
import sys
|
||||
|
||||
|
||||
def bubble_sort(numbersInput: List[int]) -> List[int]:
|
||||
numbers = list(numbersInput)
|
||||
length = len(numbers)
|
||||
for index_1 in range(length):
|
||||
for index_2 in range(length - index_1 - 1):
|
||||
if numbers[index_2] > numbers[index_2 + 1]:
|
||||
temporary = numbers[index_2]
|
||||
numbers[index_2] = numbers[index_2 + 1]
|
||||
numbers[index_2 + 1] = temporary
|
||||
return numbers
|
||||
|
||||
|
||||
numbers: List[int] = []
|
||||
for value in sys.stdin:
|
||||
numbers.append(int(value.rstrip('\n')))
|
||||
|
||||
numbers = numbers[1:]
|
||||
sorted_numbers = bubble_sort(numbers)
|
||||
for number in sorted_numbers:
|
||||
print(number)
|
@ -0,0 +1,7 @@
|
||||
# sorting-algorithms/python/insertion-sort
|
||||
|
||||
Created by [@Divlo](https://github.com/Divlo) on 29 June 2021.
|
||||
|
||||
| Algorithm | Best Case | Average Case | Worst Case |
|
||||
| ----------------------------------------------------------- | ----------- | ------------ | ----------- |
|
||||
| [Insertion sort](https://wikipedia.org/wiki/Insertion_sort) | O(n) | O(n²) | O(n²) |
|
@ -0,0 +1,24 @@
|
||||
from typing import List
|
||||
import sys
|
||||
|
||||
|
||||
def insertion_sort(numbersInput: List[int]) -> List[int]:
|
||||
numbers = list(numbersInput)
|
||||
for index_1 in range(1, len(numbers)):
|
||||
current = numbers[index_1]
|
||||
index_2 = index_1 - 1
|
||||
while index_2 >= 0 and numbers[index_2] > current:
|
||||
numbers[index_2 + 1] = numbers[index_2]
|
||||
index_2 -= 1
|
||||
numbers[index_2 + 1] = current
|
||||
return numbers
|
||||
|
||||
|
||||
numbers: List[int] = []
|
||||
for value in sys.stdin:
|
||||
numbers.append(int(value.rstrip('\n')))
|
||||
|
||||
numbers = numbers[1:]
|
||||
sorted_numbers = insertion_sort(numbers)
|
||||
for number in sorted_numbers:
|
||||
print(number)
|
Reference in New Issue
Block a user