假设给定一个数组s [1…n]和一个反向过程(s,i,j),该过程将反转位置i和j(包括两端)之间的元素顺序。以下顺序是什么
do, where 1 < k <= n:
reverse (s, 1, k);
reverse (s, k + 1, n);
reverse (s, 1, n);
(GATE CS 2000)
(A)将s向左旋转k个位置
(B)保持不变
(C)反转s的所有元素
(D)以上都不是答案: (A)
说明:任何k的上述3次反转的效果等同于大小为n乘k的数组的左旋转。请参阅此帖子以获取详细信息。
如果我们将数组旋转n次(k = 1到n),则会得到相同的数组。
这个问题的测验