Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.08.10;
Скачать: CL | DM;

Вниз

алгоритм поиска дублирующих строк в файле   Найти похожие ветки 

 
max   (2008-07-10 15:00) [0]

Добрый день, уважаемые форумчане!
Помогите, пожалуйста, ускорить алгоритм поиска дублирующих
значений в файле.
Есть два файла. Вкаждом порядка 200000 строк. Используя ниже приведенный код на поиск уходит очень много времени.


while not EOF(f1) do
begin
 ReadLn(f1,line1);
 Reset(f2);
 while not EOF(f2) do
 begin
  ReadLn(f2, line2);
  if line1=line2 then    writeln(f_r, line1);
 end;
end;


 
tesseract ©   (2008-07-10 15:22) [1]

ну ещё бы, он не тормозил.  Надо строить самоупорядочивающиеся хэши строк, потом алгоритм сравнения. За сим отправляю к Кнуту и Бакнелу, ибо это страниц 30-40 разъеснений.


 
Сергей М. ©   (2008-07-10 16:04) [2]

А каков результат примерной оценки количества уникальных строк в результирующем списке ?

Я к тому что возможно приспособить под это дело TStringList, если оценка внушает оптимизм)


 
Ega23 ©   (2008-07-10 16:25) [3]


> возможно приспособить под это дело TStringList


на 200000 строк?
Хотя может и не будет тормозить...


 
Rouse_ ©   (2008-07-10 16:26) [4]

вот тут я что-то в свое время писал для чего-то, мошт пригодится:
http://rouse.drkb.ru/files/dict.zip


 
Игорь Шевченко ©   (2008-07-10 16:37) [5]


> Помогите, пожалуйста, ускорить алгоритм поиска дублирующих
> значений в файле.


есть замечательная программа diff с иходниками. Именно для этого предназначена. Работает довольно быстро. Исходники на С можно найти в интернете (и не одни)


 
Сергей М. ©   (2008-07-10 17:51) [6]


> Ega23 ©   (10.07.08 16:25) [3]


Имелась ввиду загрузка в TStringList результата, а не оригинала ..



Страницы: 1 вся ветка

Текущий архив: 2008.08.10;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.012 c
3-1204112582
Tornado
2008-02-27 14:43
2008.08.10
Сформировать запрос


15-1211482317
AEN
2008-05-22 22:51
2008.08.10
Кто нибудь играл в Dune4?


1-1196461699
Flexer
2007-12-01 01:28
2008.08.10
Конструктор для элемента коллекции


15-1214071119
data
2008-06-21 21:58
2008.08.10
а я в отпуске))) пишу из Турции


2-1215435771
Сергей
2008-07-07 17:02
2008.08.10
Почему не подключает Winrar?