以下代码可以使切片向左旋转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]"
我对它为什么发生很有趣。