将数组向某方向移动K位
2018-06-13 10:55:16 0 举报
将数组向某方向移动K位
作者其他创作
大纲/内容
将再被last变量保存起来
3
2
50
20
10
true
60
last
如果j小于最大下标数组小下标的值赋值给数组大下标的位置
30
4
两个数组
原数组
怎样用代码去实现它? k为3
1
原为30
5
最大下标位
原为50
a[0] = last;
for(int i=0;i=0;j--){ }}
8
右移3位
开始
010011---------001---------------------------001010---------011
in
原为20
结束
k为3
int i = 0
6
原为60
false
a[ i+k ] = a[i];
i++
原为10
somethingwrong
int j = 0
i k?
for(int i=0;ia.length;i++){ for(int j=0;j indexMax){ a[(i + k - indexMax) - 1] = a[i]; } }}
a[k-(indexMax-i)] = a[i];
0
int last = a[maxIndex];
int i=0;
完成了3次位移
j maxIndex?
a[maxIndex - j] = a[maxIndex - j - 1]
保存最后的数值int lase = a[maxIndex];
i+k indexMax
for (int i = 0; i < k; i++) { int last = a[maxIndex]; for (int j = 0; j < maxIndex; j++) { a[maxIndex - j] = a[maxIndex - 1 - j]; } a[0] = last;}
0 条评论
下一页