Нужно оптимизировать вставку элементов в DOM для списков с уникальными элементами. Грубо говоря, есть список элементов <li> и при изменении списка обновляются/добавляются/удаляются только те элементы, которые были изменены.
Сейчас использую модифицированный гуглом алгоритм Майера, который работает за линейное время и, в общем, всем устраивает
https://github.com/google/diff-match-patch
Не нравится достаточно большой код алгоритма, не смотря на то, что выпилил из него match, patch и прочие ненужные методы, и то, что он изначально расчитан на работу со строками, а у меня уникальные ключи. Соответственно, можно добиться лучшей производительности или такой же меньшими усилиями.
Не уверен, что это правильное место, чтобы спрашивать по алгоритмам, но может кто-то знает подходящее решение. Может быть есть что-то в библиотеках для работы с виртуальным DOM?