У владельца легкого магазина есть несколько цепей ламп разных типов, которые состоят из луковиц разных цветов в разном порядке. В дополнение к этому, он имеет большую коллекцию луковиц каждого цвета. Цепь луковиц идентифицируется цветовой последовательностью его луковиц. Он хочет превратить один тип цепочки ламп в цепь другого типа ламп:Как решить, какой подход нужно использовать для написания алгоритмов?
• Добавление луковицы в определенном месте. • Извлечь лампу из местоположения. • Замена лампы на другую лампу разного цвета.
Учитывая две цветовые последовательности двух различных цепей ламп, найдите минимальный номер. операций, необходимых для этого преобразования. (Предположим, что каждый цвет может быть представлен символом, и, следовательно, цветовая последовательность цепочки ламп может быть представлена как последовательность символов или строка.) Входные/выходные данные Вход: • Первая последовательность цветов (строка A) • Вторая цвет последовательности (строка в)
Выход: Минимальное Количество операций, необходимых для преобразования первой цепи лампы во второй (целое число)
Примеры Input1: "asdfgh" input2: "sdfgh"
Выход: 1
Input1: "х" input2: "ASDF"
Выход: 4
в указанном выше случае, как найти решение и что должно быть первым шагом? Я энтузиаст и новичок в написании алгоритмов.
Задача описывает редактирования расстояния (или расстояние Левенштейна) между двумя строками. Посмотрите на [Левенштейн расстояние] (http://en.wikipedia.org/wiki/Levenshtein_distance) для получения дополнительной информации. –
Интересный вопрос: у меня когда-то была аналогичная проблема (замена весов на гантели, но с дополнительным добавлением их можно заменить только с одной стороны); не получил ответа тогда ... вы также можете попробовать Math fora, так как это может быть известная математическая проблема. –