每天学一点Python——二分查找
一个完整的二分查找程序如下:
这里可能犯的一个错误是:int转换是放在第5行第6行,正确的是应该放在第5行,如果放到第6行,即将第5行和第6行改为:
此时运行,得到的结果如下:
而正确的答案应该是
这是为什么?
这个主要是因为binary_search(my_list,3)语句返回的值必须是整型(数组的索引必须是整型),而mid=(low+high)/2返回的值是个浮点数。
一个完整的二分查找程序如下:
这里可能犯的一个错误是:int转换是放在第5行第6行,正确的是应该放在第5行,如果放到第6行,即将第5行和第6行改为:
此时运行,得到的结果如下:
而正确的答案应该是
这是为什么?
这个主要是因为binary_search(my_list,3)语句返回的值必须是整型(数组的索引必须是整型),而mid=(low+high)/2返回的值是个浮点数。