vlambda博客
学习文章列表

每天学一点Python——二分查找


一个完整的二分查找程序如下:

这里可能犯的一个错误是:int转换是放在第5行第6行,正确的是应该放在第5行,如果放到第6行,即将第5行和第6行改为:

每天学一点Python——二分查找

此时运行,得到的结果如下:

而正确的答案应该是

这是为什么?

这个主要是因为binary_search(my_list,3)语句返回的值必须是整型(数组的索引必须是整型),而mid=(low+high)/2返回的值是个浮点数。