/* 关于这 数组偏移 1 2 3 4 5 3---->> 3 4 5 1 2 n =5 返回 2 */ #include <bits/stdc++.h> using namespace std; int a[]={1,2,3,4,5}; int n=5; int count=3; int fun(int n,int a[],int count,int len)//不给数组长度真的不好做 ,JAVA是能由数组直接拿 { int b[2*len]; int ret=0; for(int i=0;i<2*len;i++) { b[i]=a[i%len];//cout<<b[i]<<" "; 空间换时间,思考的一种方法 } for(int i=count-1;i<count-1+len;i++) { cout<<b[i]<<" "; //即输出 旋转后的数组 if(b[i]==n) { ret=i-count+1; } } cout<<endl; return ret; } // 1 2 3 4 5 1 2 3 4 5 // --------- int main() { cout<<fun(5,a,3,5)<<endl; cout << "Hello,C++ world of AnycodeX!" << endl; return 0; }
时间: 2024-10-27 08:49:50