不会飞的章鱼

熟能生巧,勤能补拙;念念不忘,必有回响。

Leetcode-189-rotate-array | 旋转数组

题目链接

解答

方法一,暴力求解

1
2
3
4
5
6
7
8
9
10
11
12
func rotate(nums []int, k int)  {
//暴力解决
var temp,previous int
for i:=0;i<k;i++ {
previous = nums[len(nums)-1]
for j:=0;j<len(nums);j++ {
temp = nums[j]
nums[j] = previous
previous = temp
}
}
}

方法二,使用额外的数组

1
2
3
4
5
6
7
8
9
10
11
func rotate(nums []int, k int)  {
//使用额外的数组
a := make([]int,len(nums))
for i:=0;i<len(nums);i++ {
a[(i+k) % len(nums)] = nums[i]
}
for i:=0;i<len(nums);i++ {
nums[i] = a[i]
}

}
------ 本文结束------
如果本篇文章对你有帮助,可以给作者加个鸡腿~(*^__^*),感谢鼓励与支持!