目录
一、一次遍历 —— 找规律
class Solution {
public:
bool check(vector<int>& nums) {
int n=nums.size();
int cnt=0;
for(int i=0;i<n-1;i++) if(nums[i]>nums[i+1]) cnt++;
if(cnt==0) return true;
if(cnt==1&&nums[0]>=nums[n-1]) return true;
return false;
}
};
class Solution {
public:
bool check(vector<int>& nums) {
int n=nums.size();
int cnt=0;
for(int i=0;i<n;i++)
if(nums[i]>nums[(i+1)%n]) cnt++;
return cnt<=1;
}
};
二、自写暴力法
class Solution {
public boolean check(int[] nums) {
int n=nums.length;
int[] a=new int[n];
for(int i=0;i<n;i++) a[i]=nums[i];
Arrays.sort(nums);
for(int i=0;i<=n-1;i++)
{
int cnt=0;
for(int j=0;j<n;j++)
{
if(nums[j]==a[(j+i)%n]) cnt++;
}
if(cnt==n) return true;
}
return false;
}
}