leetcode_189. Rotate Array 原地旋转数组
2016-11-10 17:49
417 查看
题目:
Rotate an array of n elements to the right by k steps.
For example, with n = 7 and k = 3, the array
rotated to
Note:
Try to come up as many solutions as you can, there are at least 3 different ways to solve this problem.
题意:
给定一个数组nums和常数k,就地将数组中的每个数往后移k个位置。
代码:
class Solution(object):
def rotate(self, nums, k):
"""
:type nums: List[int]
:type k: int
:rtype: void Do not return anything, modify nums in-place instead.
"""
n = len(nums)
nums_lis = list(nums) #定义一个list,记录移动k个位置后的数组
for i in range(n) :
pos = (i+k)%n
nums_lis[pos] = nums[i]
for i in range(n) :
nums[i] = nums_lis[i] #就地修改原来的数组
Rotate an array of n elements to the right by k steps.
For example, with n = 7 and k = 3, the array
[1,2,3,4,5,6,7]is
rotated to
[5,6,7,1,2,3,4].
Note:
Try to come up as many solutions as you can, there are at least 3 different ways to solve this problem.
题意:
给定一个数组nums和常数k,就地将数组中的每个数往后移k个位置。
代码:
class Solution(object):
def rotate(self, nums, k):
"""
:type nums: List[int]
:type k: int
:rtype: void Do not return anything, modify nums in-place instead.
"""
n = len(nums)
nums_lis = list(nums) #定义一个list,记录移动k个位置后的数组
for i in range(n) :
pos = (i+k)%n
nums_lis[pos] = nums[i]
for i in range(n) :
nums[i] = nums_lis[i] #就地修改原来的数组
相关文章推荐
- LeetCode 189. Rotate Array(旋转数组)
- [LeetCode] 189. Rotate Array 旋转数组
- leetcode 189. Rotate Array-旋转数组
- leetcode-189 Rotate Array 旋转数组
- LeetCode 189. Rotate Array (旋转数组)
- LeetCode 189 Rotate Array(旋转数组)
- 【LeetCode-面试算法经典-Java实现】【189-Rotate Array(旋转数组)】
- LeetCode 189 Rotate Array(旋转数组)
- leetcode 189. Rotate Array旋转数组
- LeetCode-189:Rotate Array (数组的循环移位)
- 189. Rotate Array 旋转数组
- LeetCode Rotate Array 旋转数组
- 189. Rotate Array 旋转数组
- leetcode解题之189 # Rotate Array Java版 (对数组的部分翻转)
- 【LeetCode】Rotate Array 旋转数组
- 1.1数组和链表:189. Rotate Array(Leetcode)
- [LeetCode] Rotate Array 旋转数组
- leetCode 189. Rotate Array 数组
- [LeetCode]12. Rotate Array旋转数组
- leetcode Rotate Array 旋转数组