返回顶部
首页 > 资讯 > 后端开发 > Python >python二分查找算法的代码怎么写
  • 957
分享到

python二分查找算法的代码怎么写

python 2023-10-26 17:10:25 957人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

以下是一个简单的二分查找算法的python代码实现: def binary_search(arr, target): lef

以下是一个简单的二分查找算法python代码实现:

def binary_search(arr, target):
    left = 0
    right = len(arr) - 1

    while left <= right:
        mid = (left + right) // 2

        if arr[mid] == target:
            return mid
        elif arr[mid] < target:
            left = mid + 1
        else:
            right = mid - 1

    return -1

使用该算法时,需要传入一个有序的数组 `arr` 和要查找的目标值 `target`。函数会返回目标值在数组中的索引,如果目标值不在数组中,则返回 -1。

以下是一个使用示例:

arr = [2, 5, 8, 12, 16, 23, 38, 56, 72, 91]
target = 23

result = binary_search(arr, target)
if result != -1:
    print(f"目标值 {target} 在数组中的索引为 {result}")
else:
    print("目标值不在数组中")

输出:

目标值 23 在数组中的索引为 5

--结束END--

本文标题: python二分查找算法的代码怎么写

本文链接: https://lsjlt.com/news/466369.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • python二分查找算法代码怎么写
    下面是一个示例的Python二分查找算法代码: def binary_search(arr, target): left =...
    99+
    2023-10-22
    python
  • python二分查找算法的代码怎么写
    以下是一个简单的二分查找算法的Python代码实现: def binary_search(arr, target): lef...
    99+
    2023-10-26
    python
  • python二分法查找实例代码
    对于要搜索的元素越多,二分查找速度比简单查找快的更多 这是二分查找算法的优点,但二分算法也有缺点,二分算法只针对有序的列表,这样插入和删除就会很困难,因此,折半查找方法只适合不经常变...
    99+
    2024-04-02
  • Python二分查找算法怎么应用
    本篇内容主要讲解“Python二分查找算法怎么应用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python二分查找算法怎么应用”吧!1. 算法描述二分法是一种效率比较高的搜索方法回忆之前做过的...
    99+
    2023-07-02
  • 【Python查找算法】二分查找、线性查找、哈希查找
    目录 1 二分查找算法  2 线性查找算法 3 哈希查找算法 1 二分查找算法         二分查找(Binary Search)是一种用于在有序数据集合中查找特定元素的高效算法。它的工作原理基于将数据集合分成两半,然后逐步缩小搜...
    99+
    2023-10-10
    算法 python
  • Android二分查找算法怎么用
    本篇内容主要讲解“Android二分查找算法怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Android二分查找算法怎么用”吧!旋转数组的最小数字题目:把一个数组最开始的若干个元素搬到数组...
    99+
    2023-06-04
  • C#二分查找算法怎么用
    这篇“C#二分查找算法怎么用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C#二分查找算法怎么用”文章吧。1、定义:折半搜索...
    99+
    2023-06-30
  • C语言折半查找算法的代码怎么写
    下面是一个基本的C语言折半查找算法的示例代码: #include <stdio.h> int binarySearch...
    99+
    2024-03-12
    C语言
  • C#二分查找算法
    1、定义: 折半搜索,也称二分查找算法、二分搜索,是一种在有序数组中查找某一特定元素的搜索算法。 要计算把目标值插入到该数组中的索引值。最开始的思路: ①.先把目标数插入到数组中 ②...
    99+
    2024-04-02
  • Java实现查找算法的示例代码(二分查找、插值查找、斐波那契查找)
    目录1.查找概述2.顺序查找3.二分查找3.1 二分查找概述3.2 二分查找实现4.插值查找4.1 插值查找概述4.2 插值查找实现5.斐波那契查找5.1 斐波那契查找概述5.2 斐...
    99+
    2024-04-02
  • php二分查找算法怎么实现
    PHP实现二分查找算法的步骤如下: 确定要查找的数组和目标值。 定义一个函数,传入查找的数组、目标值以及数组的起始位置和结束位置作...
    99+
    2024-03-15
    php
  • python二分查找法
    1、条件不是所有数据类型都可以应用二分查找法,他需要满足以下的条件:是一个有序序列(索引数组),且是已经排好序的序列.2、查找原理在一个有序序列中查找一个指定的数,如果首先和这个序列的中间数相比如果相等就找到返回,如果比这个中间数小,即在...
    99+
    2023-01-31
    python
  • Python算法练习之二分查找算法的实现
    目录1. 算法描述2. 算法分析3. 算法思路4. 代码实现纯算法实现递归法实现1. 算法描述 二分法是一种效率比较高的搜索方法 回忆之前做过的猜数字的小游戏,预先给定一个小于100...
    99+
    2024-04-02
  • python二分法查找怎么使用
    这篇文章主要讲解了“python二分法查找怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“python二分法查找怎么使用”吧!对于要搜索的元素越多,二分查找速度比简单查找快的更多 这是...
    99+
    2023-06-25
  • python二分查找算法的递归实现方法
    本文实例讲述了python二分查找算法的递归实现方法。分享给大家供大家参考,具体如下: 这里先提供一段二分查找的代码: def binarySearch(alist, item): first = ...
    99+
    2022-06-04
    递归 算法 方法
  • python查找与排序算法实例代码分析
    查找二分查找二分搜索是一种在有序数组中查找某一特定元素的搜索算法。搜索过程从数组的中间元素开始,如果中间元素正好是要查找的元素,则搜索过程结束;如果某一特定元素大于或者小于中间元素,则在数组大于或小于中间元素的那一半中查找,而且跟开始一样从...
    99+
    2023-05-17
    Python
  • Python详细解析之二分查找算法
    本篇文章给大家带来了关于python的相关知识,其中主要整理了二分查找算法的相关问题,包括了算法描述、算法分析、算法思路等等内容,下面一起来看一下,希望对大家有帮助。二分法是一种效率比较高的搜索方法回忆之前做过的猜数字的小游戏,预先给定一个...
    99+
    2022-06-28
    python
  • Python查找算法之分块查找算法的实现
    一、分块查找算法 分块查找是二分法查找和顺序查找的改进方法,分块查找要求索引表是有序的,对块内结点没有排序要求,块内结点可以是有序的也可以是无序的。 分块查找就是把一个大的线性表分解...
    99+
    2024-04-02
  • JavaScript二分查找算法的应用方法
    这篇文章主要介绍“JavaScript二分查找算法的应用方法”,在日常操作中,相信很多人在JavaScript二分查找算法的应用方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaScript二分查找算...
    99+
    2023-06-20
  • C语言算法--有序查找(折半查找/二分查找)
    目录题目解法一: 挨个遍历方法二:折半查找/二分查找(仅适用于有序查找)总结题目 首先我们来把题目瞅一眼: 在一个有序数组中查找具体的某个数字n。 编写int binary_sea...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作