Easiest way to Rotate a List in c#

后端 未结 16 3150
鱼传尺愫
鱼传尺愫 2020-12-01 07:06

Lists say I have a list List {1,2,3,4,5}

Rotate means:

=> {2,3,4,5,1} => {3,4,5,1,2} => {4,5,1,2,3}
16条回答
  •  既然无缘
    2020-12-01 07:46

    below is my approach. Thank you

    public static int[] RotationOfArray(int[] A, int k)
      {
          if (A == null || A.Length==0)
              return null;
          int[] result =new int[A.Length];
          int arrayLength=A.Length;
          int moveBy = k % arrayLength;
          for (int i = 0; i < arrayLength; i++)
          {
              int tmp = i + moveBy;
              if (tmp > arrayLength-1)
              {
                  tmp =  + (tmp - arrayLength);
              }
              result[tmp] = A[i];             
          }        
          return result;
      }
    

提交回复
热议问题