#include<iostream>
using namespace std;
int main()
{
int arr[] = {5,6,7,8,9,1,2,3,4};
int left = 0, right = 8;
cout<<"循环有序数组arr[]={";
for(int i = 0; i < 9; i++)
if(i != 8)
cout<<arr[i]<<",";
else
cout<<arr[i]<<"}"<<endl;
while(left <= right)
{
int mid = left + (right - left) >> 1;
if(arr[left] < arr[right])
{
cout<<"最小值为:"<<arr[left]<<endl;
return 0;
}
else
{
if(arr[left] > arr[mid])
{
right = mid - 1;
}
else if(arr[mid] > right)
{
left = mid + 1;
}
else
{
int minn = arr[left];
for(int i = left + 1; i < right ; i++)
if(arr[i] < minn)
{
minn = arr[i];
}
cout<<"最小值为:"<<minn<<endl;
return 0;
}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。