gpt4 book ai didi

python - 如何使用 for 循环来计算二分搜索中执行的搜索次数?

转载 作者:行者123 更新时间:2023-11-30 23:18:55 32 4
gpt4 key购买 nike

我正在尝试计算使用二分搜索执行的搜索数量。

def binarySearch(l, value, low = 0, high = -1):
if not l:
return -1
if(high == -1):
high = len(l)-1
if low == high:
if l[low] == value:
return low
else:
return -1
mid = (low+high)//2
if l[mid] > value:
return binarySearch(l, value, low, mid-1)
elif l[mid] < value:
return binarySearch(l, value, mid+1, high)
else:
return mid

我有一个 friend 建议使用 for 循环并计算迭代次数,但这就是我的困惑。我不确定初始化 for 循环以执行上述任务的参数。

任何想法将不胜感激。谢谢。

最佳答案

你可以有计数器变量

def binarySearch(l, value, low = 0, high = -1):
binarySearch.counter += 1

您可以在调用函数之前将其初始化为零

binarySearch.counter =0
l=[1,4,5,6]
binarySearch(l,1,0,-1)
print binarySearch.counter

关于python - 如何使用 for 循环来计算二分搜索中执行的搜索次数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26436152/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com