После того, как класс difflib.SequenceMatcher
в стандартной библиотеке Python оказался неподходящим для моих нужд, был написан общий модуль "diff" -ing для решения проблемной области. После нескольких месяцев на размышления о том, что он делает, рекурсивный алгоритм, похоже, ищет больше, чем нужно, путем повторного поиска тех же областей в последовательности, которую, возможно, также исследовал отдельный «поток поиска».
Назначение модуля diff
- вычислить разницу и сходство между парой последовательностей (список, кортеж, строка, байты, массив байтов и т. Д.). Первоначальная версия была намного медленнее, чем текущая форма кода, так как скорость ее работы увеличилась в десять раз. Есть ли у кого-нибудь предложение по реализации метода сокращения пространств поиска в рекурсивных алгоритмах для повышения производительности?