晚上好。我正在尝试重新开始编程,并决定在自己的时间做一些练习编码。我目前正在尝试实现二进制搜索,但我的代码中似乎存在一个连续循环。有人可以告诉我发生了什么吗?
def binChop(key, ordered_set):
found = False
newSet = ordered_set
while found != True or newSet > 0:
midpoint = int(len(newSet)/2)
if key < newSet[midpoint]:
found = False
newSet = newSet[:midpoint]
elif key > newSet[midpoint]:
found = False
newSet = newSet[midpoint:]
elif key==newSet[midpoint]:
found = True
return found