From 9752b040f1bc0c9bafc79664301bf6ca41392070 Mon Sep 17 00:00:00 2001 From: goodm2 <4qjpngu8mem8cz> Date: Sun, 21 Feb 2021 18:55:52 +0000 Subject: [PATCH 1/5] [mypy] Add/fix type annotations for recursive_insertion_sort(#4085) --- sorts/recursive_insertion_sort.py | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sorts/recursive_insertion_sort.py b/sorts/recursive_insertion_sort.py index 66dd08157df1..89f88b4a961b 100644 --- a/sorts/recursive_insertion_sort.py +++ b/sorts/recursive_insertion_sort.py @@ -4,6 +4,8 @@ from __future__ import annotations +from typing import List + def rec_insertion_sort(collection: list, n: int): """ @@ -70,6 +72,6 @@ def insert_next(collection: list, index: int): if __name__ == "__main__": numbers = input("Enter integers separated by spaces: ") - numbers = [int(num) for num in numbers.split()] - rec_insertion_sort(numbers, len(numbers)) - print(numbers) + number_list: List[int] = [int(num) for num in numbers.split()] + rec_insertion_sort(number_list, len(number_list)) + print(number_list) From 2e31573d7a02310af0cc744d7b5e539412d80df0 Mon Sep 17 00:00:00 2001 From: goodm2 Date: Mon, 22 Feb 2021 10:46:07 +0000 Subject: [PATCH 2/5] [mypy] Add/fix type annotations for bucket_sort(#4085) --- sorts/bucket_sort.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sorts/bucket_sort.py b/sorts/bucket_sort.py index a0566be662e3..1ac76774f4ba 100644 --- a/sorts/bucket_sort.py +++ b/sorts/bucket_sort.py @@ -27,6 +27,7 @@ Source: https://en.wikipedia.org/wiki/Bucket_sort """ +from typing import List def bucket_sort(my_list: list) -> list: @@ -51,7 +52,7 @@ def bucket_sort(my_list: list) -> list: return [] min_value, max_value = min(my_list), max(my_list) bucket_count = int(max_value - min_value) + 1 - buckets = [[] for _ in range(bucket_count)] + buckets: List[list] = [[] for _ in range(bucket_count)] for i in range(len(my_list)): buckets[(int(my_list[i] - min_value) // bucket_count)].append(my_list[i]) From 82b8a74bef882bbe5737b356abd443c5d59d1219 Mon Sep 17 00:00:00 2001 From: goodm2 Date: Mon, 22 Feb 2021 10:46:53 +0000 Subject: [PATCH 3/5] [mypy] Reworked code for cocktail_shaker_sort so that missing return statement error is resolved(#4085) --- sorts/cocktail_shaker_sort.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sorts/cocktail_shaker_sort.py b/sorts/cocktail_shaker_sort.py index 42015abc5f97..b738ff31d768 100644 --- a/sorts/cocktail_shaker_sort.py +++ b/sorts/cocktail_shaker_sort.py @@ -33,7 +33,8 @@ def cocktail_shaker_sort(unsorted: list) -> list: swapped = True if not swapped: - return unsorted + break + return unsorted if __name__ == "__main__": From 8cfd82594ba99d2ecf5606f87e35a593779238bf Mon Sep 17 00:00:00 2001 From: goodm2 Date: Mon, 22 Feb 2021 10:47:15 +0000 Subject: [PATCH 4/5] [mypy] Add/fix type annotations for patience_sort(#4085) --- sorts/patience_sort.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sorts/patience_sort.py b/sorts/patience_sort.py index f4e35d9a0ac6..87f5a4078612 100644 --- a/sorts/patience_sort.py +++ b/sorts/patience_sort.py @@ -1,6 +1,7 @@ from bisect import bisect_left from functools import total_ordering from heapq import merge +from typing import List """ A pure Python implementation of the patience sort algorithm @@ -43,7 +44,7 @@ def patience_sort(collection: list) -> list: >>> patience_sort([-3, -17, -48]) [-48, -17, -3] """ - stacks = [] + stacks: List[Stack] = [] # sort into stacks for element in collection: new_stacks = Stack([element]) From 65c2d50b497333c87329f2b5ef5e810943467985 Mon Sep 17 00:00:00 2001 From: goodm2 Date: Mon, 22 Feb 2021 10:48:09 +0000 Subject: [PATCH 5/5] [mypy] Add/fix type annotations for radix_sort(#4085) --- sorts/radix_sort.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sorts/radix_sort.py b/sorts/radix_sort.py index 57dbbaa79076..b802b5278119 100644 --- a/sorts/radix_sort.py +++ b/sorts/radix_sort.py @@ -30,7 +30,7 @@ def radix_sort(list_of_ints: List[int]) -> List[int]: max_digit = max(list_of_ints) while placement <= max_digit: # declare and initialize empty buckets - buckets = [list() for _ in range(RADIX)] + buckets: List[list] = [list() for _ in range(RADIX)] # split list_of_ints between the buckets for i in list_of_ints: tmp = int((i / placement) % RADIX)