前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【算法】二分查找

【算法】二分查找

作者头像
小嗷犬
发布2022-11-15 15:47:40
2870
发布2022-11-15 15:47:40
举报
文章被收录于专栏:小嗷犬的CSDN文章

本文为自用模板,不提供思路讲解

二分查找

简介

二分查找,用于查找有序组中特殊值的位置,时间复杂度为O(logn)

二分查找
二分查找

C++ 实现

二分查找的 C++ 实现:

代码语言:javascript
复制
int binSearch(int *arr, int n, int target)
{
    int left = 0, right = n - 1;
    while (left <= right)
    {
        int mid = left + (right - left) / 2;
        if (arr(mid) == target)
        {
            return mid;
        }
        else if (arr(mid) > target)
        {
            right = mid - 1;
        }
        else
        {
            left = mid + 1;
        }
    }
    return -1;
}

Python 实现

二分查找的 Python 实现:

代码语言:javascript
复制
def bin_search(data_list, target):
    left = 0
    right = len(data_list) - 1
    while left <= right:
        mid = left + (right - left) // 2
        if data_list[mid] == target:
            return mid
        elif data_list[mid] > target:
            right = mid - 1
        else:
            left = mid + 1
    return -1
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-10-03,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 二分查找
  • 简介
  • C++ 实现
  • Python 实现
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档