search for a range
来源:互联网 发布:js点击按钮执行ctrl c 编辑:程序博客网 时间:2024/06/07 12:25
Given a sorted array of integers, 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 Solution { public int[] searchRange(int[] nums, int target) { int[] index = {-1,-1}; if(nums.length == 0 || nums == null){ return index; } int start = 0; int end = nums.length - 1; int mid = 0; while(start + 1 < end){ mid = start + (end - start)/2; if(nums[mid] == target){ //继续向左边找 end = mid; }else if(nums[mid] < target){ start = mid; }else{ end = mid; } } //start 在 end 前面,因为找最开始的所以start放前面 if(nums[start] == target){ index[0] = start; }else if(nums[end] == target){ index[0] = end; }else{ return index; } start = 0; end = nums.length -1; while(start + 1 < end){ mid = start + (end - start)/2; if(nums[mid] == target){ start = mid; }else if(nums[mid] > target){ end = mid; }else{ start = mid; } } //start 在 end 前面,因为找最后面的所以end放前面 if(nums[end] == target){ index[1] = end; }else if(nums[start] == target){ index[1] = start; } return index; }}
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
- 设计模式之工厂模式
- python——scrapy安装成功,check项目成功,运行出现一下问题
- ROS学习手记 - 2.1: Create and Build ROS Package 生成包(Python)
- error:#5:cannotopensourceinputfile"stm32f10x_lib.h":Nosuchfileordirectory
- 每个对象都有自己的由其他对象所构成的存储
- search for a range
- 【线段树】 HDOJ 5283 Senior's Fish
- shell学习四十二天----使用touch更新文件时间
- HDU 2199 二分查找
- [leetcode] 147.Insertion Sort List
- 交换排序之冒泡排序
- XJTU Summer Holiday Test 1(Divisibility by Eight-8的倍数)
- 最短路径—Dijkstra算法和Floyd算法
- Spark