【leetcode刷题笔记】Find Minimum in Rotated Sorted Array
Suppose a sorted array 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).
Find the minimum element.
You may assume no duplicate exists in the array.
题解:就是找数组中第一个“下凹”的地方,可以遍历,不过也可以用二分法,速度更快。
特别注意边界的处理:如果当前的中间值mid在0这个位置,只要考虑它后面的元素是不是小于它;如果在数组最后的位置上,要考虑它前面的元素是不是大于它。最后当发现当前mid所指的值不是所求的“下凹点”的时候,要把它和最后数组的最后一位比较,如果它比数组的最后一位大,说明要找的“下凹点”在mid所指位置的后面,否则在mid所指位置的前面。
JAVA版本代码如下:
 import java.awt.datatransfer.StringSelection;
 public class Solution {
     public static void main(String[] args){
         int num[] = {3,4,5,1,2};
         Solution s = new Solution();
         System.out.println(s.findMin(num));
     }
     public int findMin(int[] num) {
         int begin = 0;
         int end = num.length-1;
         while(begin <= end){
             int mid = (begin + end)/2;
             if(mid == 0){
                 if(mid+1 < num.length && num[mid+1] < num[mid])
                     return num[mid+1];
                 else {
                     return num[0];
                 }
             }
             if(mid == num.length-1){
                 if(mid-1 >=0 && num[mid-1] > num[mid])
                     return num[mid];
                 else {
                     return num[0];
                 }
             }
             if(num[mid-1] > num[mid] && num[mid+1] > num[mid])
                 return num[mid];
             if(num[num.length-1] < num[mid])
                 begin = mid+1;
             else {
                 end = mid-1;
             }
         }
         return num[0];
     }
 }
【leetcode刷题笔记】Find Minimum in Rotated Sorted Array的更多相关文章
- 【leetcode刷题笔记】Search in Rotated Sorted Array II
		Follow up for "Search in Rotated Sorted Array":What if duplicates are allowed? Would this ... 
- 【leetcode刷题笔记】Search in Rotated Sorted Array
		Suppose a sorted array is rotated at some pivot unknown to you beforehand. (i.e., 0 1 2 4 5 6 7 migh ... 
- 【leetcode刷题笔记】Remove Duplicates from Sorted Array II
		Follow up for "Remove Duplicates":What if duplicates are allowed at most twice? For exampl ... 
- 简单的算法题, Find Minimum in Rotated Sorted Array 的Python实现。
		简单的算法题, Find Minimum in Rotated Sorted Array 的Python实现. 题目: Suppose a sorted array is rotated at som ... 
- LeetCode(154) Find Minimum in Rotated Sorted Array II
		题目 Follow up for "Find Minimum in Rotated Sorted Array": What if duplicates are allowed? W ... 
- LeetCode(153) Find Minimum in Rotated Sorted Array
		题目 Total Accepted: 65121 Total Submissions: 190974 Difficulty: Medium Suppose a sorted array is rota ... 
- 【leetcode刷题笔记】Minimum Window Substring
		Given a string S and a string T, find the minimum window in S which will contain all the characters ... 
- 【leetcode刷题笔记】Minimum Depth of Binary Tree
		Given a binary tree, find its minimum depth. The minimum depth is the number of nodes along the shor ... 
- 【leetcode刷题笔记】Remove Duplicates from Sorted List
		Given a sorted linked list, delete all duplicates such that each element appear only once. For examp ... 
- (python)leetcode刷题笔记04  Median of Two Sorted Arrays
		4. Median of Two Sorted Arrays There are two sorted arrays nums1 and nums2 of size m and n respectiv ... 
随机推荐
- ActiveMQ安装优化
			ActiveMQ性能測试 http://m.blog.csdn.net/blog/brushli/41750615 1.下载ActiveMQ 官网:http://activemq.apache.org ... 
- oauth 2
			OAuth2是基于HTTP的认证API,一般与OAuth2搭配的API也是基于HTTP的REST风格API(比如新浪微博和github),很多人一定想过是否可以直接从浏览器端调用REST API. 我 ... 
- cxGrid 根据列值变色(样式)
			在使用cxGrid的过程中,某一个单元格经常需要根据其他单元格的值来做相应的变色,如: 在cxGridDBTableView中,选定要变样式(如背景色.字体属性等)的列, 打开事件Events -&g ... 
- github删除已经push到服务器上的commit的方法
			使用两条指令: git reset --hard <commit_id> git push origin HEAD --force 其中commit_id是你想回到的commit的id(即 ... 
- WebService之XFire和SOAP实例(基于JAVA)
			开发环境:jdk1.6 + Tomcat7 + MyEclipse10 源码下载地址张贴在文章最后面:首先是使用WSDL协议实现:这里使用XFire XFire一个免费.开源的SOAP框架,它构建了P ... 
- 【转】 JS实现HTML标签转义及反转义
			原文地址:http://blog.600km.xyz/2015/12/15/js-encode-html-tags/ 简单说一下业务场景,前台用户通过input输入内容,在离开焦点时,将内容在div中 ... 
- Jmeter--正则表达式提取值
			博客首页:http://www.cnblogs.com/fqfanqi/ 设置界面如下: Apply to:应用范围的选择: Field to check:检查的领域,即需要提取内容的地方. 下面是各 ... 
- 《挑战程序设计竞赛》2.6 数学问题-辗转相除法 AOJ0005 POJ2429 1930(1)
			AOJ0005 http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0005 题意 给定两个数,求其最大公约数GCD以及最小公倍数LCM. ... 
- Duilib 入门级教程 推荐
			http://www.cnblogs.com/Alberl/category/520438.html 作者写的不错,图文并茂,适合刚入门. 
- TGI指数
			TGI指数 目标人群中国具有某一特征的群体占比/总体中具有相同特征的群体的占比*标准数100 
