#include<iostream>
#include<cstdlib>
#define MAX 101
#define OVERFLOW -1
using namespace std;
typedef struct
{
int *elem;
int listlen;
int listsize;
}list;
list CreatList (list &l,int n)
{
l.elem=new int [MAX];
if(!l.elem)
exit(OVERFLOW);
l.listlen=0;
l.listsize=MAX;
for(int i=0;i<n;i++)
{
cin>>l.elem[i];
l.listlen++;
}
}
void NewList(list &l,int m)
//逐个元素向后推一个,最后一个变为第一个,直至m为0
{
int q,i,p,j;
while(m--)
{
j=l.elem[0];
for(i=0;i<l.listlen-1;i++)
l.elem[i]=l.elem[i+1];
l.elem[l.listlen-1]=j;
}
}
int main()
{
int len,m,t,i;
cin>>t;
while(t--)
{
cin>>len>>m;
list newlist;
CreatList(newlist,len);
NewList(newlist,m);
for(i=0;i<newlist.listlen;i++)
{
if(i!=newlist.listlen-1)
cout<<newlist.elem[i]<<" ";
else cout<<newlist.elem[i]<<endl;
}
}
return 0;
}
3326顺序表应用3:元素位置互换之移位算法
最新推荐文章于 2017-03-03 16:17:05 发布