一、题目原型:
给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。
说明:
尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。
要求使用空间复杂度为 O(1) 的原地算法。
二、题目意思剖析:
1 |
示例 1: |
三、解题思路:
1.最后一个数字 - > 第一个
2.最后一个数字 - > 第一个
。。。
1 |
func rotate(_ nums: inout [Int], _ k: Int) { |
。。。待续
给定一个数组,将数组中的元素向右移动 k 个位置,其中 k 是非负数。
说明:
尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。
要求使用空间复杂度为 O(1) 的原地算法。
1 |
示例 1: |
1.最后一个数字 - > 第一个
2.最后一个数字 - > 第一个
。。。
1 |
func rotate(_ nums: inout [Int], _ k: Int) { |
。。。待续
近期评论