Преобразовать один список объектов в другой список

Это вопрос теории, поэтому я собираюсь использовать псевдокод.

У меня есть список объектов, которые мне нужно преобразовать в другой список.

Я реализовал алгоритм Левенштейна, и он отлично работает, но мне нужно сохранить объекты, а не создавать новые. Я могу перебор, но я бы предпочел найти не O(n*m) способ сделать это.

[obj1, obj2, obj3] -> [obj1, obj4, obj5, obj2, obj6, obj3]

obj1, obj2, obj3 должны быть тем же объектом, где остальные являются вновь созданными объектами.

Кто-нибудь знает хороший алгоритм для этого?

1 ответ

Решение

Вы можете использовать шаблон flyweight, для этого вам нужно будет поддерживать созданные объекты в кеше. Строки в Java является хорошим примером этого шаблона.

Другие вопросы по тегам