leetcode:Search for a Range
来源:互联网 发布:辐射4防具数据 编辑:程序博客网 时间:2024/05/06 09:50
二分法:
public class Solution {
public int[] searchRange(int[] A, int target) {return msearch(A,target,0,A.length-1);
}
public static int[] msearch(int[] A, int target, int begin, int end) {
int mid,i;
int[] rst={-1,-1};
int n=end-begin+1;
if(n==0)
return rst;
if(n==1)
{
if(A[begin]==target)
{
rst[0]=begin;rst[1]=begin;
return rst;
}
else
return rst;
}
mid=begin+n/2;
if(target>A[mid])
{
return msearch(A,target,mid+1,end);
}
else if(target<A[mid])
{
return msearch(A,target,begin,mid-1);
}
else
{
i=mid;
while(i>=begin && A[i]==target)
{
i--;
}
rst[0]=i+1;
i=mid;
while(i<=end && A[i]==target)
{
i++;
}
rst[1]=i-1;
}
return rst;
}
}
0 0
- LeetCode: 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] 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 - Search for a Range
- Search for a Range leetcode
- LeetCode | 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: Search for a Range
- HDU 4472 Count(记忆化搜索)
- Android Studio使用技巧和快捷键
- 记一个典型的高可用(HA)方案:drbd+heartbeat
- ini 的使用
- 基于FPGA的跨时钟域信号处理——专用握手信号
- leetcode:Search for a Range
- 浙江大学PAT---Basic Level---1006----换个格式输出整数
- android 导出每个号码的最新的短信记录(巧用SQL语句的"--"注释符)
- 笔记3 IsPostBack和Cookie
- 用占位符%p输出变量在内存中的具体地址
- String、StringBuffer、StringBuilder
- 注册表的保存位置在哪里?注册表文件保存在哪里?
- JAVA 包装类的细节
- VLC for Android的编译