Leetcode: Search for a Range
来源:互联网 发布:ubuntu 设置工作路径 编辑:程序博客网 时间:2024/06/09 08:36
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]
.
思路:两次二分搜索,分别找start pos和end pos。
public class Solution { public int[] searchRange(int[] A, int target) { int[] res = {-1, -1}; if (A == null || A.length == 0) { return res; } int start, end; start = 0; end = A.length - 1; while (start + 1 < end) { int mid = start + (end - start) / 2; if (A[mid] == target) { end = mid; } else if (A[mid] > target) { end = mid; } else if (A[mid] < target) { start = mid; } } if (A[start] == target) { res[0] = start; } else if (A[end] == target) { res[0] = end; } else { return res; } start = 0; end = A.length - 1; while (start + 1 < end) { int mid = start + (end - start) / 2; if (A[mid] == target) { start = mid; } else if (A[mid] > target) { end = mid; } else if (A[mid] < target) { start = mid; } } if (A[end] == target) { res[1] = end; } else if (A[start] == target) { res[1] = start; } else { return res; } return res; }}
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
- matlab的Deep Learning的toolbox 中的SAE算法
- deep learning 之学习路线
- 【体系结构问题解决,1】解决4031错误方法
- 黑马程序员——Java集合框架—List
- 算法学习之排序算法:选择排序
- Leetcode: Search for a Range
- 快速排序
- hdu_2795,线段树,单点更新
- 抓住灵感的方法——Leo鉴书73
- 数列有序
- 社会力模型之墙力分析
- Sharepoint习题——内存对象的释放
- 【HTML5】HTML5 Game Engines
- 时域信号的功率谱估计