leetcode解题方案--034--Search for a Range
来源:互联网 发布:数据整合平台 编辑:程序博客网 时间:2024/04/29 10:26
题目
分析
查找给定数在数组的范围,数组已排序。
思路是 二分法查找所求范围的最左侧和最右侧,分别输出即可。
注意的是,得到左指针和右指针需要分别判定两种边界条件。
一个是左序号为0或右序号是数组最后一个,另一个是不存在返回-1
class Solution { public static int[] searchRange(int[] nums, int target) { if (nums == null || nums.length <= 0) { return new int[]{-1, -1}; } int leftlow = 0; int lefthigh = nums.length - 1; int left = 0; while (lefthigh - leftlow > 1) { int mid = (lefthigh + leftlow) / 2; if (nums[mid] >= target) { lefthigh = mid; } else { leftlow = mid; } } int rightlow = 0; int righthigh = nums.length - 1; int right = 0; while (righthigh - rightlow > 1) { int mid = (righthigh + rightlow) / 2; if (nums[mid] <= target) { rightlow = mid; } else { righthigh = mid; } } if (nums[leftlow]!=target && nums[lefthigh]!=target) { return new int[]{-1,-1}; } left = nums[leftlow] == target ? leftlow : lefthigh; right = nums[righthigh] == target ? righthigh : rightlow; return new int[]{left, right}; }}
阅读全文
0 0
- leetcode解题方案--034--Search for a Range
- Leetcode Search for a Range 解题报告
- leetcode解题笔记-Search for a Range
- LeetCode解题报告--Search for a Range
- [LeetCode] Search for a Range 解题报告
- [leetcode javascript解题]Search for a range
- LeetCode: Search for a Range 解题报告
- [leetcode] 34. Search for a Range 解题报告
- Leetcode #34. Search for a Range 范围搜寻 解题报告
- [Leetcode] 34. Search for a Range 解题报告
- LeetCode 034 Search for a Range
- LeetCode(034) Search For a Range (Java)
- leetcode 034 Search for a Range
- LeetCode 034 Search for a Range
- [LeetCode]034-Search For A Range
- leetcode 034 Search for a Range
- leetcode 034 Search For A Range
- LeetCode 034 Search for a Range
- 4. Running Student
- Office远程代码执行漏洞POC样本分析(CVE-2017-11882)
- 11 H5上实现超声波测距模块的设备驱动
- STL里面的next_permutation求字典序排列问题
- 《时代》17年十大电子设备:iPhone X登榜
- leetcode解题方案--034--Search for a Range
- 关于Hibernate中的级联操作以及懒加载
- Windows 7 下 安装 mysql-5.7.20-win32.zip 教程
- 进程和线程
- 京东商城分类实现
- Centos7更换yum源
- Navicat工具导出mySQL数据库某个视图结构的.sql脚本
- android 常用权限和依赖
- leetcode 94|144|145. Binary Tree Traversal 二叉树三种遍历