Рубрики

ВОРОТА | GATE-CS-2000 | Вопрос 38

Предположим, вам дан массив s [1..n] и процедура reverse (s, i, j), которая меняет порядок элементов в позициях между позициями i и j (оба включительно). Что делает следующая последовательность, где 1 обратный (s, 1, k); обратный ход (s, k + 1, n); обратный (s, l, n);

(A) поворачивает влево на k позиций
(B) Оставляет без изменений

(С) инвертирует все элементы
(D) Ничего из вышеперечисленного

Ответ: (А)
Объяснение: Эффект вышеупомянутых 3 разворотов для любого k эквивалентен левому вращению массива размера n на k. Пожалуйста, смотрите этот пост для деталей.
Если мы повернем массив n раз для k = 1 до n, мы получим тот же массив обратно.
Тест на этот вопрос

Рекомендуемые посты:

ВОРОТА | GATE-CS-2000 | Вопрос 38

0.00 (0%) 0 votes