📜  用于数组旋转的Python程序(1)

📅  最后修改于: 2023-12-03 15:40:54.043000             🧑  作者: Mango

用于数组旋转的Python程序介绍

数组旋转是一种基本的数组操作,它可以将数组中的元素顺时针或逆时针旋转固定的次数。Python提供了非常方便的方法来实现数组旋转,下面是一个简单的示例程序。

代码示例
def rotate_array(arr, k):
    """
    用于将数组 arr 向右旋转 k 次
    """
    k = k % len(arr)
    arr[:k], arr[k:] = arr[len(arr)-k:], arr[:len(arr)-k]
    return arr
代码解析

该示例代码定义了一个 rotate_array 函数,接收两个参数:arr代表待旋转的数组,k代表旋转次数。该函数将传入的数组按照指定次数向右旋转,并返回旋转后的数组。

为了避免重复旋转,程序对旋转次数取了余数。接着,通过 Python 的高级赋值语法交换数组的前 k 个元素和后 len(arr)-k 个元素的位置,从而完成了旋转的操作。

代码测试
arr = [1, 2, 3, 4, 5]
k = 2
print(rotate_array(arr, k))  # [4, 5, 1, 2, 3]

我们使用一个长度为5的数组,将其向右旋转2次,结果为 [4, 5, 1, 2, 3],符合预期。