如何在Go中解释反向旋转

时间:2019-05-20 02:02:06

标签: algorithm go

以下代码可以使切片向左旋转2个元素

s := []int{0, 1, 2, 3, 4, 5}
// Rotate s left by two positions.
reverse(s[:2])
reverse(s[2:])
reverse(s)
fmt.Println(s) // "[2 3 4 5 0 1]"

在这种情况下,向右旋转2个元素

s := []int{0, 1, 2, 3, 4, 5}
// Rotate s right by two positions.
reverse(s)
reverse(s[:2])
reverse(s[2:])
fmt.Println(s) // "[5 4 0 1 2 3]"

我对它为什么发生很有趣。

0 个答案:

没有答案