primeiro commit com exercicios de Exercism realizados até esta data
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
# iterative version of the code
|
||||
# def find(search_list: list[int], value: int) -> int:
|
||||
# left: int = 0
|
||||
# right: int = len(search_list) - 1
|
||||
# search_list.sort()
|
||||
# while left <= right:
|
||||
# middle_index: int = (left + right) // 2
|
||||
# if value < search_list[middle_index]:
|
||||
# right = middle_index - 1
|
||||
# elif value > search_list[middle_index]:
|
||||
# left = middle_index + 1
|
||||
# else:
|
||||
# return middle_index
|
||||
# raise ValueError(f"value not in array")
|
||||
|
||||
|
||||
# recursive version of the code
|
||||
def find(search_list: list[int], value: int) -> int:
|
||||
middle_index: int = (len(search_list) - 1) // 2
|
||||
search_list.sort()
|
||||
if search_list == []:
|
||||
raise ValueError("value not in array")
|
||||
if value < search_list[middle_index]:
|
||||
return find(search_list[:middle_index], value)
|
||||
elif value > search_list[middle_index]:
|
||||
return (middle_index + 1) + find(search_list[middle_index + 1:], value)
|
||||
else:
|
||||
return middle_index
|
||||
Reference in New Issue
Block a user