Эта простенькая задача возникает иногда в более сложных алгоритмах.
Имеется, например, строка "qwerty". Нужно получить симметричное(зеркальное) отображение: "ytrewq"
Берем 2 индекса: начало и конец строки(одномерного массива). В цикле последовательно двигаем их друг к другу, меняя соответствующие элементы:
for i = 0 to n - 1 && j = n-1 downto 0 if i >= j return tmp = str[i] str[i] = str[j] str[j] = tmp