【开发者笔记】二分法查找

简介: 刚看到一篇博客说现在90%的程序员都无法正确的写出二分法查找,吓得我赶紧试了试 #python codedef binary_serach(arr,st,end,tar): mid = st + end mid = mid // 2 if st > end: ...

刚看到一篇博客说现在90%的程序员都无法正确的写出二分法查找,吓得我赶紧试了试

#python code
def binary_serach(arr,st,end,tar): mid = st + end mid = mid // 2 if st > end: return False elif tar == arr[mid]: return True elif tar < arr[st] or tar > arr[end]: return False elif tar < arr[mid]: return binary_serach(arr,st,mid,tar) elif tar > arr[mid]: return binary_serach(arr,mid+1,end,tar) else: return False if __name__ == "__main__": l = [1,3,5,6,8,9,12,15,17,23,45] print(l) print("target: %s, result: %s" % (0, binary_serach(l, 0, len(l) - 1, 0))) print("target: %s, result: %s" % (1, binary_serach(l, 0, len(l) - 1, 1))) print("target: %s, result: %s" % (2, binary_serach(l, 0, len(l) - 1, 2))) print("target: %s, result: %s" % (3, binary_serach(l, 0, len(l) - 1, 3))) print("target: %s, result: %s" % (23, binary_serach(l, 0, len(l) - 1, 23))) print("target: %s, result: %s" % (45, binary_serach(l, 0, len(l) - 1, 45))) print("target: %s, result: %s" % (46, binary_serach(l, 0, len(l) - 1, 46)))

下面是测试结果

 

那么我还没忘

技术发展那么快,一次又一次的迭代,到头来发现,还是颈椎病对我们不离不弃。

活动脖子,天天code

那么今天就愉快的下班了吧

 

黑夜给了我黑色的眼睛,我却用它寻找光明
目录
相关文章
|
7月前
|
存储 算法 搜索推荐
数据结构与算法⑰(第五章_八大排序)(完整代码+动图+详解+对比)(上)
数据结构与算法⑰(第五章_八大排序)(完整代码+动图+详解+对比)
69 6
|
7月前
|
算法 编译器
数据结构与算法⑰(第五章_八大排序)(完整代码+动图+详解+对比)(中)
数据结构与算法⑰(第五章_八大排序)(完整代码+动图+详解+对比)
63 4
|
7月前
|
存储 算法 搜索推荐
数据结构与算法⑰(第五章_八大排序)(完整代码+动图+详解+对比)(下)
数据结构与算法⑰(第五章_八大排序)(完整代码+动图+详解+对比)
56 1
|
7月前
|
算法 搜索推荐 Java
「程序员必须掌握的算法」字典树「上篇」
「程序员必须掌握的算法」字典树「上篇」
|
7月前
|
存储 算法
【408数据结构与算法】—排序(十四)
【408数据结构与算法】—排序(十四)
|
人工智能 搜索推荐
【数据结构】深入浅出讲解计数排序【图文详解,搞懂计数排序这一篇就够了】
【数据结构】深入浅出讲解计数排序【图文详解,搞懂计数排序这一篇就够了】
76 0
|
存储 搜索推荐 算法
数据结构与算法之三 深入学习排序
数据结构与算法之三 深入学习排序
40 0
|
存储 机器学习/深度学习 算法
数据结构与算法之二 排序
数据结构与算法之二 排序
34 0
|
前端开发
前端学习笔记202305学习笔记第二十八天-数组结构之快速排序4
前端学习笔记202305学习笔记第二十八天-数组结构之快速排序4
48 0
|
前端开发
前端学习笔记202305学习笔记第二十八天-数组结构之快速排序5
前端学习笔记202305学习笔记第二十八天-数组结构之快速排序5
34 0