Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

алгоритм сравнения текстовых файлов

1.8K
07 сентября 2008 года
igor_nf
256 / / 13.12.2006
Проблема состоит в написании программы, анализирующей конфигурационные файлы, точнее, сравнивающей контент двух файлов. С точки зрения внутренней структуры конфигурационные файлы - это обычные текстовые файлы, возможно содержащие комментарии. Само по себе построчное сравнение файлов выполнить просто. Но этого мало. Я разделил изменения, затрагивающие файл на изменения горизонтальной ориентации(пример - изменение в конкретной строке) и изменения вертикальной ориентации(пример - добавление новой строки). С первым справляется построчное сравнение. Вот со вторым сложнее. Если в файл добавляются новые строки, программа должна каким-нибудь адекватным образом на это реагировать - например так: "В файл X были добавлены строки номер ... , в остальном файлы идентичны". Точно так же и с удалением строк..

Плиз, пните в нужном направлении - какой алгоритм выбрать ? В голову ничего не приходит, кроме как начать с построчного сравнения файлов, а вот ЕСЛИ встретятся неидентичные строки, ТОГДА анализировать ближайшее окружение(N строк вверх и вниз..) на идентичность и далее всё новые и новые костыли со всеми вытекающими последствиями(загромождённость кода, рост сложности ..)
Должно же быть эффективное решение ?
5
07 сентября 2008 года
hardcase
4.5K / / 09.08.2005
1) А чем fc или diff не угодили?
2) Гражданин, да вы математику не изучали - а ну-ка быстро в сеть за алгоритмом нахождения общей подпоследовательности.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог