Попробую
Конечно, экономили на битах, считали статистику последовательностей и кодировали их. Главная проблема, насколько я помню (опять же!), была в тяжести адресации последних узлов (листьев). С ней справились через неявную адресацию.
Вообще, основной недостаток дерева - в представлении его в компьютерной памяти. Память же линейна. Т.е. мы дерево вынуждены разрезать по ВСЕМ веточкам и соединить их заново связями. Представьте дерево в саду и мысленно разрежьте его, выложив в струнку и соединив ниточками узлы. Цена этого особенно велика на конечных узлах.
Думаю, людей, у которых в лохматые 90-е был словарь Зализняка в 300К не так уж и мало. Вот и у нас такой имелся. Просто задача была: работать в 640К. Конечно, если быть точным, словарь у нас был в 350К, но в нем еще была полная морфологическая информация (прямые и обратные коды) для лексем и словоформ.
Причем, метод построения словаря мы использовали другой, чем Илья: у него была хэш-таблица, у нас - дерево. Точнее, 2 дерева - основ и окончаний. Плюс очевидные "экономящие" правила, например, приставка НЕ с прилагательными.
Так что задачка не такая трудная, если ее можно решать разными способами.
4LF,
Здесь две задачи:
1. Выбрать отрывок/ки текста, которые выдавать в качестве сниппета.
2. Выдача этого отрывка.
Первая задача зависит от критерия определения этого куска. Пусть, к примеру, это будет наибольшая плотность/близость слов запроса. Тогда получить критериальные оценки и, следовательно, координаты нужного отрывка можно через координатный индекс. Т.е. текст для этого не нужен.
2. Здесь без текста не обойтись. Нужен конкретный отрывок с известными из (1) координатами. Можно, конечно, разобрать страницу на лету тем же разборщиком, что грузили, но это слишком накладно. Предлагаю хранить текст с проставленными при загрузке координатами (вектор координата-смещение) - это достаточно простое решение.
Или можно преобразовать текст в структуру с быстрым разбором, например, разметить текст. Тогда найти текст с нужными координатами будет несложно.
Аналогично
lagif, простите, поясните, пожалуйста, есть ли разница, кому адресовалось некое спорное для кого-то утверждение в открытом посте? Мне представляется, что публичное утверждение может быть публично же оспорено. Не так ли?
Вы же сами продолжаете публичную полемику, при этом оппонента загоняя в личку.
goover, я что-то не нашел, давали ли Вам эту ссылку: Агеев М.С., Добров Б.В, Красильников П.В., Сидоров А.В, Штернов С.В. Некоторые способы определения географической привязки IP адресов.
lagif, Понял свою ошибку, поправляюсь: "...Ваших талантов".
Уважаемая lagif, ну зачем же так резко понижать уровень разговора? Не разочаровывайте нас, верных поклонников Вашего таланта.
Может, все-таки, без совершенной точности обойтись? Откуда такой неожиданный перфекционизм? Мало сейчас неточных, грубых, но полезных методов и сервисов? Или Яндекс абсолютно точно ранжирует, Новотека безошибочно кластеризует, а Адсенс также точно определяет тематику? А ведь это лидеры рынка.
Не люблю повторять очевидные истины, но есть уровень Достаточного Качества продукта.