轮转数组-LeetCode
轮转数组
🎯 问题描述(来源于LeetCode)
描述:
给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。
要求:
1
Do not return anything, modify nums in-place instead
说明:
1 <= nums.length <= 105-231 <= nums[i] <= 231 - 10 <= k <= 105
示例:
- 示例 1:
输入: nums = [1,2,3,4,5,6,7], k = 3
输出:[5,6,7,1,2,3,4]
解释:
向右轮转 1 步:[7,1,2,3,4,5,6]
向右轮转 2 步:[6,7,1,2,3,4,5]
向右轮转 3 步:[5,6,7,1,2,3,4]
💻 解题思路
思路1:三次反转
思路1:代码实现
1 | class Solution: |
思路1:📊 性能分析
提交结果
- 运行时间:7ms击败50.31%
- 内存消耗:25.22MB击败37.81%
复杂度验证
- 时间复杂度:
- 空间复杂度:
思考
通过三次反转实现数组轮转
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 笺札!










