cocobear9  
一枚普通的zisuer(lll¬ω¬),努力每天多学一点点

随笔分类 -  二分查找

  • 剑指 Offer 11. 旋转数组的最小数字
    摘要:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转,该数组的最小值为1。 示例 1: 输入:[3,4,5,1,2]输出:1示例 2: 输入:[2,2,2 阅读全文
    posted @ 2020-07-23 00:34 cocobear9 阅读(70) 评论(0) 推荐(0)
  • 34. 在排序数组中查找元素的第一个和最后一个位置
    摘要:二分,边界判断好麻烦啊 TNT,代码好像还能简便一些 给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 你的算法时间复杂度必须是 O(log n) 级别。 如果数组中不存在目标值,返回 [-1, -1]。 示例 1: 输入: nums 阅读全文
    posted @ 2020-06-09 19:42 cocobear9 阅读(202) 评论(0) 推荐(0)
  • x 的平方根
    摘要:实现 int sqrt(int x) 函数。 计算并返回 x 的平方根,其中 x 是非负整数。 由于返回类型是整数,结果只保留整数的部分,小数部分将被舍去。 示例 1: 输入: 4输出: 2示例 2: 输入: 8输出: 2说明: 8 的平方根是 2.82842..., 由于返回类型是整数,小数部分将 阅读全文
    posted @ 2020-05-09 22:11 cocobear9 阅读(313) 评论(0) 推荐(0)
  • 二分搜索(折半查找)搜索插入位置
    摘要:给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 你可以假设数组中无重复元素。 示例 1: 输入: [1,3,5,6], 5输出: 2示例 2: 输入: [1,3,5,6], 2输出: 1示例 3: 输入: [1,3,5,6], 阅读全文
    posted @ 2020-03-11 23:16 cocobear9 阅读(536) 评论(0) 推荐(0)