Search for a Range
来源:互联网 发布:猫云seo 编辑:程序博客网 时间:2024/06/07 16:54
Given an array of integers sorted in ascending order, find the starting and ending position of a given target value.
Your algorithm's runtime complexity must be in the order of O(log n).
If the target is not found in the array, return [-1, -1]
.
For example,
Given [5, 7, 7, 8, 8, 10]
and target value 8,
return [3, 4]
.
public class SearchForARange {public int[] searchRange(int[] nums,int target){int i=0,j=nums.length-1; int[] ret = {-1,-1}; if(nums == null || nums.length == 0) return ret; //搜索第一个位置 while(i<j){ int mid = (i+j)/2; if(nums[mid]<target) i = mid+1; else j = mid; } if(nums[i] != target){ return ret; }else{ ret[0] = i; } //搜索最后一个位置 j=nums.length-1; while(i<j){ int mid = (i+j)/2+1; if(nums[mid] > target){ j = mid-1; }else i = mid; } ret[1] = j; return ret;}}
阅读全文
0 0
- Search for a Range
- Search for a Range
- Search for a Range
- Search for a Range !!!
- Search for a Range
- Search for a Range
- Search For A Range
- Search for a Range
- Search for a Range
- Search for a Range
- Search for a Range
- Search for a Range
- Search for a Range
- Search for a Range
- Search for a Range
- Search for a Range
- Search for a Range
- Search for a Range
- Win XP仍为占有率第三系统!
- AlphaGo算法最清晰的解读
- LeetCode 112. Path Sum 注意递归的终止条件
- HDU2242 考研路茫茫——空调教室
- dvwa-sql injection(blind)
- Search for a Range
- 一个简单的用户登录接口
- ffmpeg简介
- 关于树莓派B+可用的Openwrt固件
- Leetcode——3. Longest Substring Without Repeating Characters
- android build 过程 (ramdisk.img、sytem.img、userdata.img)和 启动过程简单分析
- matlab实现一次性实现多个文件夹图片转化为.mat文件
- 无穷大量
- activity异常生命周期下的退出数据保存的方法