`
sls0919
  • 浏览: 125829 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

python二分法查找

阅读更多

下面是一段用Python实现的二分法查找代码

#encoding=utf-8

import sys

def search2(a,m):
    low = 0
    high = len(a) - 1
    while low<=high:
        mid = (low + high)/2
        midval = a[mid]

        if midval<m:
            low = mid + 1
        elif midval>m:
            high = mid-1
        else:
            print mid
            return mid
    print -1
    return -1

if __name__ == "__main__":

    a = [int(i) for i in list(sys.argv[1])]
    m = int(sys.argv[2])
    search2(a,m)

运行测试结果:

shao@ubuntu:~/tmp$ python test_search2.py 123456789 4
3 

 

1
2
分享到:
评论

相关推荐

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

    本文实例讲述了python二分法查找算法实现方法。分享给大家供大家参考,具体如下: 二分法查找 二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此...

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

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

    python二分法实现实例

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

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

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

    Python二分法源码

    Python 二分法是一种高效的搜索算法,常用于有序数组中的查找操作。它通过将查找范围逐渐缩小一半来定位目标元素。下面是 Python 实现二分法的示例代码: ``` def binary_search(arr, target): low = 0 high = ...

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

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

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

    ### Python有序查找算法:二分法实例解析 #### 一、引言 在计算机科学领域,数据结构与算法是核心的基础知识。对于有序数组或列表的查找操作,有一种高效的算法——**二分查找**(也称作折半查找)。本文将详细介绍...

    Python有序查找算法之二分法实例分析

    本文实例讲述了Python有序查找算法之二分法。分享给大家供大家参考,具体如下: 二分法是一种快速查找的方法,时间复杂度低,逻辑简单易懂,总的来说就是不断的除以2除以2… ...二分法查找非常快且非常常用,但是唯

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

    在本主题“Python低内耗读取文件的二分查找单词”中,我们将探讨如何结合二分查找来有效地在文件中查找特定单词,同时尽可能降低内存消耗。 首先,我们需要理解二分查找的基本原理。在已排序的列表或数组中,二分...

    Python实现二分法算法实例

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

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

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

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

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

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

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

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

    二分法,又称折半查找法,是一种在有序数组中查找特定元素的搜索算法。在求平方根的问题中,二分法的基本思想是通过不断将区间对半分割,逐步逼近目标值。以求根号5为例,初始区间为[0, 5],然后每次取区间的中点,...

    易语言二分法求函数零点源码

    二分法,也称为折半查找法,是一种在有序数组中寻找特定元素的有效算法。在数学和计算中,二分法也被用于求解某些类型的问题,如找到连续函数的零点。在易语言中,我们可以利用二分法来寻找一个函数的零点,即找到...

    Python实现二分法搜索

    二分法搜索是一种高效的数据查找算法,其核心思想是通过不断地将待搜索的有序序列划分为两半,然后根据中间元素与目标值的比较结果,排除掉一半不符合条件的元素,以此类推,直到找到目标值或者搜索范围为空。Python...

Global site tag (gtag.js) - Google Analytics