Я пытаюсь работать с программой, которая будет выделять различия между некоторыми пользовательскими файлами проекта.
Я хотел бы загрузить файлы своего проекта в пользовательскую древовидную структуру и аннотировать два дерева с добавлением, удалениеми модификации. Я могу без проблем разобрать файлы проекта в древовидную структуру, но я застрял при выполнении сравнения.
Я изучал различные статьи о методах вычисления различий между упорядоченными деревьями, но не смог обернутьмне хватит их головы, чтобы создать работающую реализацию.
Я сосредоточился в основном на оригинальной статье: Простые быстрые алгоритмы для редактирования расстояния между деревьями и связанных с ними проблем
Я хотел бы реализовать свой проект на C #, в идеале для этого была бы библиотека, но я не смог ее найти. Я нашел несколько реализаций на других языках , но они на самом деле не содержат много информации о том, как работает процесс, и поэтому я считаю, что мне будет сложно найти и устранить неисправности и протестировать, если я просто попытаюсь перенести код напрямую,
Существуют ли какие-либо библиотеки c #, которые я пропустил, или, альтернативно, есть ли библиотеки, написанные для других языков, которые хорошо документированы с точки зрения алгоритма, который я мог бы использовать в качестве основы для переноса кода.