- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
большой это в данном случае сравнимый с размером самих данных.
изначально дискуссия шла про словарь в 300 кб, а каждому слову нужен айди. так вот если хранить этот самый айди этот минимум 100-200кб только на это самой айди. так вот если его вычислять, то будет гораздо быстрее.
плотная хеш - это в точности то, что изготовляет gperf.
сейчас вот запустил его на множестве 100 тысяч строк и жду результата. ну и в нашем случае абсолютно не нужен плотный хеш. достаточно, чтобы хеш попадал в диапазон скажем от нуля до одного миллиарда, а всем новым словам можно выдавать айди, начиная с миллиарда.
отступление от темы, а как в этом случае быть бедным китайцем с их 100 тысячным списком базовых иероглифов?
достаточно, чтобы хеш попадал в диапазон скажем от нуля до одного миллиарда, а всем новым словам можно выдавать айди, начиная с миллиарда.
з.ы. интересно кто это на меня так обиделся что ежедневно добавляет мне минусы в репутацию на основании темы о размере словаря? ;-)
поиск иероглифов - это совершенно отдельная тема. там нет однозначной границы слов. кстати, мне тоже кто-то минусов понадобавлял в теме про словарь в 300К. думаю, что это тот же самый человек. сейчас пойдем навалимся на него дружно сбросим ему репутацию вообще до нуля :-)
О опять кто-то шлет отрицательные отзывы. Боюсь, что теперь уж точно кой у кого репутация окажется нулевой.
достаточно, чтобы хеш попадал в диапазон скажем от нуля до одного миллиарда, а всем новым словам можно выдавать айди, начиная с миллиарда.
из 750 тыс проиндексированных страниц удалось собрать словарь размером в 138 тыс. уникальных слов, поэтому думаю что цифра в 1 миллиард очень уж избыточная
О опять кто-то шлет отрицательные отзывы. Боюсь, что теперь уж точно кой у кого репутация окажется нулевой.
мдя, видимо у кого то из участников не хватает смелости высказать претензии в лицо и он предпочитает инкогнито понижать рейтинг, за сегодня аж три раза покусился, что ж каждый по своему проявляет свою слабость
itman,
-ну почему же. Дайте мне любое буквосочетание, и я в поисковике найду, использовал его кто-то или нет, есть оно в нете или нет. :) Все вполне реально.
Мне кажется, что Вы неправильно поставили себе задачу.
А где гарантия, что эти самые поисковики не проиндексируют завтра какое-то новое слово?
itman,
-ну почему же. Дайте мне любое буквосочетание, и я в поисковике найду, использовал его кто-то или нет, есть оно в нете или нет. :) Все вполне реально.
Мне кажется, что Вы неправильно поставили себе задачу.
А где гарантия, что эти самые поисковики не проиндексируют завтра какое-то новое слово?
- ну так, значит - ЗАВТРА оно и появится!
Завтра, завтра - не сегодня!
1) Слово рассматриваете как последовательность целых (unsigned long). Можно и байтов.
2) Считаете его контрольную S сумму по mod P , где P - простое и i-е с конца в (unsigned long)
Повторяете циклически 0< i <=n до тех пор пока не достигнете нужной вероятности коллизий.
Массив S[0..n] - будет искомым индексом.
1) Слово рассматриваете как последовательность целых (unsigned long). Можно и байтов.
2) Считаете его контрольную S сумму по mod P , где P - простое и i-е с конца в (unsigned long)
Повторяете циклически 0< i <=n до тех пор пока не достигнете нужной вероятности коллизий.
Массив S[0..n] - будет искомым индексом.
С байтами наверное правильнее будет , чтобы не терять на выравнивании слов .
Считаете его контрольную S сумму по mod P , где P - простое и i-е с конца в (unsigned long)
- поясните, пожалуйста, выделенное. Это означает, что "основание" для mod ищем по нисходящей среди простых чисел начиная с самого большого, "умещающегося" в формат (unsigned long)?
А список этих простых чисел - как получать будем, не надорвемся?
И еще: Вы в своем постере дважды употребили обозначение n. Это - описка или в самом деле одно и то же число?