В вашей программе несколько ошибок.
Вы должны поместить * args и ** args после аргументов позиции и ключевого слова.
Допустим, вы изменили определение функции. Теперь он преобразует массив в кортеж, который не будет работать в соответствии с вашим al go .it, он преобразует список в кортеж списков.
def BinarySearch( key, size,*args):
pass
[] -> ([], )
3. Итак, вам нужно разместить только часть массива. См. Приведенный ниже код.
# Binary Search
def BinarySearch(arr, key, size):
print(args)
low = 0
high = size - 1
while low <= high:
mid = (low + high) // 2
if key < args[mid]:
high = mid - 1
else:
if key > args[mid]:
low = mid + 1
else:
return mid + 1
return -1
arraySize = 10
A = [num * 2 for num in range(10)]
print("Numbers in array are : ", A)
searchKey = input("Enter integer search key : ")
element = BinarySearch(A, int(searchKey), arraySize)
if element != -1:
print("Found value in element : ", element)
else:
print("Value not found.")