Re[3]: Фильтруй...
От: uzzy Россия  
Дата: 14.03.03 12:31
Оценка:
Здравствуйте, Кодт, Вы писали:

К>Здравствуйте, Всеволод, Вы писали:


В>>На выходе имеем файл без повторяющихся строк.


К>Я так понял, что если строка повторяется — то ее вообще исключают (а не так, что оставляют один экземпляр).

К>Потому что дубликаты — это признак спама.

Если детально разобраться в ранее описанном алгоритме, то:
1. Ошибка в самом описании алгоритма:
6) Если такой строки еще нет в нашем map, то переходим к пункту 3, если есть, то к пункту 4 (не 4, а 5)

2. В выходном файле все равно одна компия "спама" будет присутствовать

Также позволю себе немного апгрейдить алгоритм Всеволода:

1) Открываем исходный файл
2) Читаем строку
3) Сохраняем ее в какой нибудь map1 (т.е. массив с доступом не по индексу, а по самой строке), переходим к пункту 5
4) Переносим из map1 в какой-нить map2, переход к пункту 5
5) Читаем очередную строку
6) Если такая строка есть в map 2 -> пункт 5, иначе, если есть в mаp1 -> пункт 5, иначе -> пункт 3

Итого:
map1 — список абсолютно без спама
map2 — спам
Что с ними делать — воля разарботчика

Удачи
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.