本文主要是介绍【hot100篇-python刷题记录】【轮转数组】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
R7-数组篇
思路:
印象题,我记得可以使用python切片拼接
python切片
要轮转k个位置,那从第k个下标开始切片,然后拼接[0,k)
class Solution:def rotate(self, nums: List[int], k: int) -> None:"""Do not return anything, modify nums in-place instead."""#这里需要注意k取模k=k%len(nums)nums[:]=nums[-k:]+nums[:-k]
很快的python语法
暴力法
class Solution:def rotate(self, nums: List[int], k: int) -> None:"""Do not return anything, modify nums in-place instead."""#这里需要注意k取模k=k%len(nums)#初始态和末尾态对比法for i in range(k):temp=nums[-1]for i in range(len(nums)-1):nums[-(i+1)]=nums[-(i+2)]nums[0]=temp
显然超时。
这篇关于【hot100篇-python刷题记录】【轮转数组】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!