如果出于某种原因需要一个新列表,或者不想篡改原始列表,可以使用sorted()
这是我们的测试内容:
bin_list = [1,2,3,5,6,9,11,12,15,20,22]
search_value_a...range(6,501))
bin_list = [1,2,3,5,6,9,11,12,15,20,22]
search_value_a = 15
search_value_b...测试列表的长度是11,但是最后一个索引是[10]。...上图是排序后结果,下图需要进行排序
总结
二分比线性快吗?是的,但要看情况而定。
如果有人告诉你二分查找更快,那是因为它通常是更快的。...如果您有一个简短的列表,或者如果您在列表的下半部分寻找元素,那么执行线性查找可能会更好。
这也是编程之美。你不应该在不知道为什么的情况下使用一种方法来做某事。