将数组向某方向移动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 条评论
 下一页
  
   
   
   
   
  
  
  
  
  
  
  
  
 