33. Search in Rotated Sorted Array
来源:互联网 发布:淘宝店经验 编辑:程序博客网 时间:2024/06/11 00:26
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.
题意:循环有序序列,前半段是有序的,后半段也是有序的。找到目标节点的序号。
class Solution { public int search(int[] nums, int target) { int left=0,right=nums.length-1; while(left<=right){ int mid=(left+right)/2; if (nums[mid]==target) return mid; if (nums[mid]>=nums[left]){ if(target<nums[mid]&&target>=nums[left]) right=mid-1; else left=mid+1; }else{ if (target>nums[mid]&&target<=nums[right]) left=mid+1; else right=mid-1; } } return -1; }}
1.在nums[mid]>=nums[left],左半段是有序的。
先在做半段找target,首先nums[left]<=target<nums[mid],保证target在做半段中,right=mid-1;
2.在右半段是有序的,nums[mid]<target<=nums[right],left=mid+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
- 上机练习2 类与对象2
- 利用cos 文本自动分类
- 敌兵布阵 HDU
- Basic queries in SQL Server
- 详解C语言可变参数va_list和vsnprintf及printf实现
- 33. Search in Rotated Sorted Array
- 2016算法第一次练习赛——A 群鸦的盛宴
- linux 进程和线程简介
- django获取ajax的post复杂对象
- 程序调试
- dbcp配置模板
- mysql简易绿色安装包
- Java中 map.values转换为list或者string[]
- c++中的setf()和precision()