1.题目详情
给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。
2.解题思路
可以用列表拼接的方式,把列表最后一个加上列表前边的
或者
把最后一个元素先挪最前边,再删除
3.代码实现
class Solution:
def rotate(self, nums: List[int], k: int) -> None:
"""
Do not return anything, modify nums in-place instead.
"""
count = 0
while count < k:
nums[:] = nums[-1:] + nums[:-1]
count += 1
删除方式
class Solution:
def rotate(self, nums: List[int], k: int) -> None:
"""
Do not return anything, modify nums in-place instead.
"""
m = len(nums)-1
for i in range(k):
temp = nums.pop(m)
nums.insert(0,temp)
4.知识点
–