python一个二分查找的函数

307次阅读
没有评论
python一个二分查找的函数

嗨,大家好,今天我要和大家聊一聊一个我们程序员经常用到的神奇的二分查找算法。这个算法就像是一只灵巧的小ipipgo,能够帮助我们快速地找到一堆数据中的目标值。不过,话不多说,让我们一起来看看吧!

什么是二分查找

首先,让我来简单地解释一下什么是二分查找。就好像你走进了一个排列整齐的书架,想要找到一本想看的小说。如果你从第一本书开始,一本一本地翻阅,那肯定会花费很多时间。但如果你采用二分查找的方法,先找到书架的中间位置,看一看中间的书是不是你要找的,如果不是,再根据书的排列顺序,确定是在左边还是右边,这样你就可以快速定位到目标书籍了。

二分查找的Python函数

下面,我给大家演示一下二分查找的Python函数:

“`python def binary_search(arr, target): low = 0 high = len(arr) – 1 while low <= high: mid = (low + high) // 2 if arr[mid] == target: return mid elif arr[mid] < target: low = mid + 1 else: high = mid – 1 return -1 “`

这个函数接受两个参数,一个是排好序的数组,另一个是目标值。它会返回目标值在数组中的索引,如果目标值不在数组中,则返回-1。

让我们来测试一下吧

现在,让我来展示一下如何使用这个二分查找函数来找到目标值在数组中的位置。

“`python arr = [1, 3, 5, 7, 9, 11, 13, 15] target = 7 result = binary_search(arr, target) if result != -1: print(f”目标值 {target} 在数组中的索引是 {result}”) else: print(“目标值不在数组中”) “`

结语

通过这个简单的例子,相信大家已经对二分查找有了一定的了解。它就像我们生活中的指路明灯,能够帮助我们快速地找到目标。希望大家在学习算法的过程中能够多多运用二分查找,让自己的代码变得更加高效!

好了,今天的分享就到这里,希望大家能有所收获。我们下次再见!

神龙|纯净稳定代理IP免费测试>>>>>>>>天启|企业级代理IP免费测试>>>>>>>>IPIPGO|全球住宅代理IP免费测试

相关文章:

版权声明:[db:作者]2023-11-29发表,共计854字。
新手QQ群:570568346,欢迎进群讨论 Python51学习