您当前的位置:首页 > 计算机 > 编程开发 > 数据结构与算法

704. 二分查找(search)

时间:07-14来源:作者:点击数:
CDSY,CDSY.XYZ

给定一个 n 个元素有序的(升序)整型数组 nums 和一个目标值 target  ,写一个函数搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。示例 1:

输入: nums = [-1,0,3,5,9,12], target = 9

输出: 4

解释: 9 出现在 nums 中并且下标为 4

示例 2:

输入: nums = [-1,0,3,5,9,12], target = 2

输出: -1

解释: 2 不存在 nums 中因此返回 -1

来源:力扣(LeetCode)

链接: leetcode 国内网/problems/binary-search

题解:

查看代码
class Solution(object):
    def search(self, nums, target):
        """
        :type nums: List[int]
        :type target: int
        :rtype: int
        """
        begin = 0
        end = len(nums) - 1
        while(begin <= end):
            half = begin + (end - begin) // 2
            if target > nums[half]:
                begin = half + 1
            elif target < nums[half]:
                end = half - 1
            else:
                return half
        return -1
CDSY,CDSY.XYZ
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐