Показать сообщение отдельно
  #4  
Старый 05.01.2011, 21:08
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,105
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

В общем, +1 к предыдущим постам.

а если тупо оптимизировать текущую версию, то:
1. Отказаться от динамических массивов типа String - использовать TStringList.
2. Выходы из циклов при выполнении условия (уже упоминалось).
3. Минимизировать кол-во операций со строками (upper/lower) путем того, что добавлять в список уже обработынные априори строки. тогда в сравнении тебе надо будет преобразовывать одну строку, а не обе. Плюс к этому вынести преобразование за границы цикла.
4. читать исходный файл одним куском в тот же TStringList.
5. Использовать глобальные переменнные там, где это имеет смысл.

Вот этот список - для начала.
Ответить с цитированием