33. Search in Rotated Sorted Array
来源:互联网 发布:淘宝卖计生用品 编辑:程序博客网 时间:2024/06/07 03:23
Suppose an array sorted in ascending order is rotated at some pivot unknown to you beforehand.
(i.e., 0 1 2 4 5 6 7
might become 4 5 6 7 0 1 2
).
You are given a target value to search. If found in the array return its index, otherwise return -1.
You may assume no duplicate exists in the array.
使用二分查找。以4 5 6 7 0 1 2为例。若mid=5,则low=mid+1当且仅当targer在(nums[0] > target) ^ (nums[0] > nums[mid]) ^ (target > nums[mid])下成立
public class Solution { public int search(int[] nums, int target) { int lo = 0, hi = nums.length - 1; while (lo < hi) { int mid = (lo + hi) / 2; if ((nums[0] > target) ^ (nums[0] > nums[mid]) ^ (target > nums[mid])) lo = mid + 1; else hi = mid; } return lo == hi && nums[lo] == target ? lo : -1; }}
阅读全文
0 0
- [LeetCode]33.Search in Rotated Sorted Array
- LeetCode --- 33. Search in Rotated Sorted Array
- LeetCode 33.Search in Rotated Sorted Array
- [Leetcode] 33. Search in Rotated Sorted Array
- 33.Search in Rotated Sorted Array
- 33. Search in Rotated Sorted Array
- 33. Search in Rotated Sorted Array
- Leetcode-33.Search in Rotated Sorted Array.
- [leetcode] 33. Search in Rotated Sorted Array
- Leetcode 33. Search in Rotated Sorted Array
- 33. Search in Rotated Sorted Array
- 33. Search in Rotated Sorted Array
- 33. Search in Rotated Sorted Array
- 33. Search in Rotated Sorted Array
- 33. Search in Rotated Sorted Array
- 33. Search in Rotated Sorted Array
- 33. Search in Rotated Sorted Array
- 33. Search in Rotated Sorted Array
- Ubuntu14.04系统自启动方法
- 面向对象及组件开发(二)工厂模式
- web上显示一个钟表
- zookeeper(单机/集群)安装与配置
- 算法谜题62 硬币收集
- 33. Search in Rotated Sorted Array
- Centos 6.5 安装mysql学习hadoop时
- Spring c3p0连接池无法释放解决方案
- 完全免费的jrebel正版激活,本人激活7.0.8
- Vue.js 学习(3) -- 语法基础
- (ASP.NET) 利用ueditor进行图片上传(尝试3)
- 面向对象及组件开发(三)构造函数模式
- flow2
- 大数据复习笔记(一)