|
|
ru.perl- RU.PERL ---------------------------------------------------------------------- From : Artem Chuprina 2:5020/371.32 13 Dec 2000 22:40:47 To : Gleb Subject : Re: сортировка большого хеша -------------------------------------------------------------------------------- В твоём письме от Wed, 13 Dec 2000 12:41:37 +0300 написано: >>Смотря что там здоровое, конечно, но... Берешь книжку по алгоритмам сортировки >>(третий том "Искусства программирования" Кнута или что более другое) и >>изучаешь. У Кнута уделяется внимание сортировке в условиях нехватки ресурсов. gzr> gzr> Да вот нет у меня этой книжки... Купи, ее недавно переиздали. Или возьми в библиотеке. gzr> Я вот подумал... может я просто задачу неправильно пытаюсь решить. gzr> Задача простая - собрать статистику по сайту какие слова упоминаються gzr> сколько раз. gzr> Я собираю в хеш все слова (слова являються keys, а количество gzr> упоминаний - values) gzr> gzr> Hу и потом нужно вывести результаты в файл. Я конечно могу выкрутиться gzr> и вывести несортированные результаты а потом их отсортировать. gzr> Просто меня эта задача сама по себе заинтересовала. Hеужто нельзя gzr> средствами perl извернуться? Обычно при этом используют хранимый хэш - DB_File, dbm али SQL-сервер какой. При нехватке памяти такая задача решается только за счет квадратичных затрат времени (считать в несколько проходов, количество проходов, очевидно, пропорционально количеству различных слов) либо за счет использования внешнего носителя. У хранимого хэша в норме есть индекс, и логически получается сортировка вставками, что в данной задаче выгоднее. --- slrn/0.9.6.3-as (Linux) * Origin: AKA с подствольным плюсомётом (2:5020/371.32) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.perl/73683e36ee4f8.html, оценка из 5, голосов 10
|