`
cakin24
  • 浏览: 1389218 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

python实现二分法查找

阅读更多

一 代码

  1. defBinarySearch(l,key):
  2. low =0
  3. high = len(l)-1
  4. i =0
  5. while(low <= high):
  6. i = i+1
  7. mid =(high + low)//2
  8. if(l[mid]< key):
  9. low = mid +1
  10. elif(l[mid]> key):
  11. high = mid -1
  12. else:
  13. print('use %d times is'% i)
  14. return mid
  15. return-1
  16. if __name__ =='__main__':
  17. l =[1,5,6,9,10,51,64,65,87]
  18. print(BinarySearch(l,5))
  19. print(BinarySearch(l,10))
  20. print(BinarySearch(l,65))
  21. print(BinarySearch(l,70))
二 运行结果
use 2 times is
1
use 1 times is
4
use 3 times is
7
-1
分享到:
评论

相关推荐

    非线性方程求根——二分法python

    采用二分法查找时,数据需是排好序的。 基本思想:假设数据是按升序排序的,对于给定值key,从序列的中间位置k开始比较, 如果当前位置arr[k]值等于key,则查找成功; 若key小于当前位置值arr[k],则在数列的前半段...

    学学Python_34函数_创建函数04 二分法查找

    本篇文章将聚焦于一个重要的查找算法——二分法查找,它在处理大规模有序数据时表现出极高的效率。 二分法查找,也称为折半查找,是一种在有序数组中查找特定元素的搜索算法。其基本思想是通过不断将待搜索区间减半...

    python二分法实现实例

    1.算法:(设查找的数组期间为array[low, high]) (1)确定该期间的中间位置K(2)将查找的值T与array[k]比较。若相等,查找成功返回此位置;否则确定新的查找区域,继续二分查找。区域确定如下:a.array[k]&gt;T 由...

    用python编写的二分法查找排序

    二分法查找(也称为二分查找、折半查找)是一种在有序数组中查找某一特定元素的搜索算法。但是,二分法查找并不涉及排序,它假设输入数组已经是有序的。

    python二分查找算法的递归实现方法

    在Python中,二分查找可以采用循环或递归的方式来实现。以下是基于递归的二分查找算法的实现方法: 首先,我们需要理解递归的基本概念。递归是指一个函数在其定义中调用自身的过程。在二分查找中,我们将问题分解为...

    python二分法查找算法实现方法【递归与非递归】

    递归版本的二分查找实现则更加简洁,它将问题分解为更小的子问题。在每次递归调用中,都会将数组分成两部分,并在其中一部分继续递归搜索。递归版本的二分查找需要定义递归结束的基准条件,当数组为空时返回False,...

    Python实现二分法算法实例

    在Python中实现二分查找算法,首先需要了解算法的基本规则。算法的步骤如下: 1. 确定查找区间,初始区间为[low, high],其中low为数组起始索引,high为数组结束索引。 2. 计算查找区间的中间位置mid,公式为mid = ...

    Python实现二分法搜索

    Python中实现二分法搜索有两种常见的方式:递归和非递归。 ### 一、递归实现 递归版本的二分法搜索代码如下: ```python class BinarySearch: def binary_search(self, array, data): """二分查找法递归实现""...

    Python二分法源码

    下面是 Python 实现二分法的示例代码: ``` def binary_search(arr, target): low = 0 high = len(arr) - 1 while low mid = (low + high) // 2 guess = arr[mid] if guess == target: return mid elif ...

    Python笔记—递归 二分法从列表找指定的值.7z

    文件名:Python笔记—递归 二分法从列表找指定的值. 配合博客地址:https://blog.csdn.net/XianZhe_/article/details/107771584 为在学习Python时所整理制作的笔记文件

    折半查找4.py 使用python实现的

    折半查找 折半查找4.py 使用python实现的 折半查找4.py 使用python实现的 折半查找4.py 使用python实现的 折半查找4.py 使用python实现的

    python有序查找算法 二分法实例解析

    在Python中,二分查找通常通过迭代或递归的方式实现。以下是基于迭代的一个简单示例: ```python def BinarySearch(arr, key): min = 0 max = len(arr) - 1 # 检查key是否存在于数组中 if key in arr: while ...

    Python编程实现二分法和牛顿迭代法求平方根代码

    在Python中,二分法求平方根的代码实现通过迭代来逼近答案,每次迭代都会减少搜索空间,直到满足精度要求。 接着,我们讨论牛顿迭代法。这种方法基于牛顿-拉弗森迭代公式,用于寻找函数零点。在求平方根问题中,...

    Python低内耗读取文件的二分查找单词

    在Python编程中,高效地处理文件是至...总之,通过结合二分查找和分块读取技术,我们可以实现Python中低内耗地在大文件中查找单词。这种方法不仅提高了查找效率,还降低了对内存的需求,是解决此类问题的一个实用策略。

    蓝桥杯 试题 算法提高 二分法查找数组元素

     用递归函数实现二分法查找数组元素。  补充:要求给定数组采用如下代码定义  int data[200];  for (i=0; i; i++)  data[i]=4*i+6; 输入格式  输入一个待查找的整数(该整数一定在数组data中)。 输出格式  ...

    人工智能-项目实践-python-顺序表、链表、栈、队列、树、Hashmap等数据结构;排序、二分法查找、树遍历等常见算法实现

    排序、二分法查找、树遍历等常见算法实现python语言实现 常见数据结构 顺序表 Python中的list和tuple两种类型采用了顺序表的实现技术 链表 单向链表 双向链表 单向循环链表 栈 队列 FIFO队列 LIFO队列 优先队列...

Global site tag (gtag.js) - Google Analytics