👩💻 На этой неделе проходил техническое собеседование в один из крупных финтехов Москвы, которое началось с классической задачи на работу со строкой. Интервьюера интересует не столько Ваши навыки в написании кода, сколько Ваш подход к решению задачи, например, применение решения с двумя указателями вместо перебора каждого символа.
Условие задачи Дана строка s, состоящая из произвольных символов латиницы, цифр, пробелов и знаков препинания. Необходимо вернуть новую строку, в которой все гласные буквы расположены в обратном порядке относительно их появления в исходной строке. При этом все остальные символы должны остаться на своих местах.
Гласными считаются буквы: a, e, i, o, u, y A, E, I, O, U, Y
Пример Ввод: “Hello world!” Вывод: “Hollo werld!”
Пояснение: В строке встречаются гласные e, o, o. После разворота их порядок становится o, o, e. Подставляем их обратно на прежние позиции и получаем строку Hollo werld.
Во вложенном изображении прикладываю свое решение на языке Python. Пишите в комментариях свой вариант решения данной задачи 💻