Учитывая 2 строки, спроектируйте функцию, которая может проверять, являются ли они вращениями друг к другу, не внося в них изменений?Возвращаемое значение логическое.
Например, ABCD, ABDC, они не являются вращениями.return false
ABCD, CDAB или DABC - это вращения.верните true.
Мое решение:
переместите одну из них вправо или влево на одну позицию, а затем сравнивайте их на каждой итерации.Если они не равны на всех итерациях, вернуть false.В противном случае верните true.
Это O (n).Есть ли другие более эффективные решения?Что если их содержимое не может быть изменено?
спасибо