首页 > 代码库 > Find Minimum in Rotated Sorted Array
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.
C
#include<stdio.h> int findMin(int num[],int n) { int i,j; if(num[0]<=num[n-1]) return num[0]; for(i=1;i<n-1;i++) { if(num[i]<num[i-1] && num[i]<num[i+1]) return num[i]; } return num[i]; } void main(){ int num[]={1}; printf("%d\n",findMin(num,1)); }
C++
class Solution { public: int findMin(vector<int> &num) { vector<int>::iterator it = num.begin(); if(*it<=*(num.end()-1)) return *it; it++; while(it != num.end()-1) { if(*it<*(it-1) && *it<*(it+1)) return *it; it++; } return *it; } };
Find Minimum in Rotated Sorted Array
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。