Typescript-Algorithms
    Preparing search index...

    Variable rotate_arrayConst

    rotate_array: (nums: number[], k: number) => void = rotate

    找轮转规律,看三个角色的关系:轮转次数k,数组长度nums.length,位置i剩余向右轮转次数maxX = nums.length - i - 1。 先看k跟数组长度关系,k小于数组长度,那么k一定会转至少一轮让整个数组元素回到原来位置,比如这里0转3次回到原位,那么需要不断削减k直到小于nums.length 削减完成后,再看k跟maxX关系,k小于maxX,那么计算各元素的位置就是 位i,最终的新位置是 newLoc = i + k; 当 k > maxX,那么多出来的转动次数leftX = k - maxX 那么相当于从头开始排新位置,则新的位置newLoc = leftX - 1; 最后记住新位置和数然后放到原数组上。

    Type declaration

      • (nums: number[], k: number): void
      • Do not return anything, modify nums in-place instead.

        Parameters

        • nums: number[]
        • k: number

        Returns void