旋转数组
在做leetcode时发现了这样一道题
给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。
- 对Python来说,负数索引表示从右边往左数,最右边的元素的索引为-1,倒数第二个元素为-2
list = ["a", "b", "c", "d", "e"]
print(list[-1])
答案是:e
def rotate(nums,k):
#旋转次数小于数组的长度
#旋转nums次又回到了原点(数组不改变)
k %= len(nums)
nums[:] = nums[-k:] + nums[0:-k]
nums1,nums2 = [1,23,45,7,9,2,56],[4,5,7,9,27,90]
rotate(nums1,23)
rotate(nums,3)
print(nums1,nums2)