天天看点

关于LeetCode旋转数组 Python3的题解记录

原地算法-leetcode题解

定义

是一种使用小的,固定数量的额外之空间来转换资料的算法。当算法执行时,输入的资料通常会被要输出的部分覆盖掉。
           

例:

给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。

class Solution:
    def rotate(self, nums: List[int], k: int) -> None:
        """
        Do not return anything, modify nums in-place instead.
        """
        for i in range(k):
            tmp = nums[-1]
            del nums[-1]   
            nums.insert(0,tmp)
           

输入: nums = [1,2,3,4,5,6,7], k = 3

输出: [5,6,7,1,2,3,4]