Краткое описание в одну строку: предлагает оптимальную (скорость поиска / компактность) структуру (и) данных для многоязычного словаря, представляющего преимущественно индоевропейские языки (список внизу) .
Предположим, вы хотите создать некоторую структуру (ы) данных для реализации многоязычного словаря, скажем, для самых популярных европейских языков в Интернете, ранжируя выбор языка по количеству веб-страницы (приблизительный список языков приведен в конце этого вопроса). Цель состоит в том, чтобы сохранить рабочий словарный запас каждого языка (например, 25 000 слов для английского языка и т. Д.) Исключение собственных существительных. Не уверен, храним ли мы множественное число, спряжения глаголов, префиксы и т. Д. Или добавляем специфичные для языка правила о том, как они образуются из существительных единственного числа или основ глаголов. Также вы можете выбрать способ кодирования и обработки акцентов, дифтонгов и специальных символов языка, например возможно, где возможно, мы транслитерируем вещи (например, Романизируем немецкий ß как 'ss', а затем добавим правило для его преобразования). Очевидно, что если вы решите использовать 40-100 символов и дерево, будет слишком много ветвей, и большинство из них будут пустыми.
Определение задачи: Какие бы структуры данных вы ни использовали, вы должны выполнить оба действия. следующее:
И главный показатель эффективности - это компромисс между а) компактностью (для всех N языков) и б) скоростью поиска . Время установки не имеет значения. Ограничение компактности исключает подходы, требующие расточительного использования памяти, такие как «сохранять отдельный хэш для каждого слова» или «сохранять отдельный хеш для каждого языка и каждого слова в этом языке» .
Итак:
(Я проверил SO, и там были связанные вопросы, но не этот точный вопрос. Конечно, не ищу базу данных SQL. Одна статья 2000 года, которая может быть полезна: «Оценка английского и не -Использование английского языка в сети Интернет »- Grefenstette & Nioche . И один список многоязычных словарей ) Ресурсы: два многоязычных онлайн-словаря: Interglot (en / ge / nl / fr / sp / se) и LookWayUp (en fr / ge / sp / nl / pt) .
Включенные языки:
Вероятно, в основном индоевропейские языки для простоты: английский, французский, испанский, немецкий, итальянский, шведский + албанский, чешский, датский, голландский, эстонский, Финский, венгерский, исландский, латышский, литовский, норвежский,Польский, португальский, румынский, русский, сербохорватский, словацкий, словенский + бретонский, каталонский, корсиканский, эсперанто, гэльский, валлийский
Возможно, включает русский, славянский, турецкий, исключая арабский, иврит, иранский, индийский и т. Д. Может включать малайский семья тоже. Скажите, чего можно достичь.