【二分查找】Search for a Range
来源:互联网 发布:倩女手游 mac 编辑:程序博客网 时间:2024/05/02 01:42
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 searchFirst(int []num, int val){ int low = 0; int high = num.length-1; while(low <= high){ int mid = (low + high) / 2; if(num[mid] == val){ if(mid-1 >= 0 && num[mid-1] == val ) high = mid-1; else return mid; } else if(num[mid] > val) high = mid - 1; else low = mid + 1; } return -1; } public int searchLast(int [] num, int val){ int low = 0; int high = num.length-1; while(low <= high){ int mid = (low + high) / 2; if(num[mid] == val){ if(mid+1 < num.length && num[mid+1] == val ) low = mid+1; else return mid; } else if(num[mid] > val) high = mid - 1; else low = mid + 1; } return -1; } public int[] searchRange(int[] A, int target) { int first = searchFirst(A, target); int last = searchLast(A, target); int b[] = new int[2]; b[0] = first; b[1] = last; return b; }}
0 0
- 【二分查找】Search for a Range
- leetcode:Search for a Range 二分查找
- leetcode 二分查找 Search for a Range
- leetcode-二分查找:Search for a range
- 二分查找:Search for a Range
- Search for a Range--查找某个数范围--二分查找
- leetcode 34. Search for a Range-数组边界|二分查找
- 34.leetcode Search for a Range(meidum)[二分查找]
- [leetcode-二分查找]--34. Search for a Range
- leetcode 34. Search for a Range 二分查找
- leetcode 34. Search for a Range (二分查找)
- 二分搜索 34. Search for a Range
- 34. Search for a Range-二分搜索
- [LeetCode] Search for a Range查找区间
- [leetcode] 【查找】 34. Search for a Range
- leetcode---search-for-a-range---查找
- leetCode_Search for a Range(二分查找)
- 二分查找有序数组中某个数的所在范围 Search for a Range
- 旋转卡壳 POJ 2079 Triangle
- 采集器延迟问题总结
- 排序之希尔排序
- 反射和代理机制
- 二叉树(按层遍历——队列模拟)
- 【二分查找】Search for a Range
- 矩阵rand
- tcpdump抓包分析详解
- 项目一。运算符重载
- 5.2 Center Selection 中心选址
- Android APK程序签名
- 自己动手编写CSDN博客备份工具-blogspider
- 快速排序算法
- 科目三考试过程详解