p148 旋转有序数组的最小值(leetcode 153)
Posted repinkply
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了p148 旋转有序数组的最小值(leetcode 153)相关的知识,希望对你有一定的参考价值。
一:解题思路
这个题目是二分搜索的一个变体。Time:log(n),Space:O(1)
二:完整代码示例 (C++版和Java版)
C++:
class Solution { public: int findMin(vector<int>& nums) { int low = 0; int high = nums.size() - 1; while (low < high) { int mid = low + (high-low) / 2; if (nums[mid] > nums[high]) low = mid + 1; else high = mid; } return nums[low]; } };
Java:
class Solution { public int findMin(int[] nums) { int low=0; int high=nums.length-1; while (low<high) { int mid=low+(high-low)/2; if(nums[mid]>nums[high]) low=mid+1; else high=mid; } return nums[low]; } }
以上是关于p148 旋转有序数组的最小值(leetcode 153)的主要内容,如果未能解决你的问题,请参考以下文章