Форум программистов, компьютерный форум CyberForum.ru

Поиск наиболее часто встречающихся слов в файле - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 15, средняя оценка - 4.87
DIEZEL-man
13 / 13 / 0
Регистрация: 17.02.2013
Сообщений: 54
25.02.2013, 17:09     Поиск наиболее часто встречающихся слов в файле #1
Дан символьный файл f, содержащий произвольный текст длиной более 5000 слов. Слова в тексте разделены пробелами и знаками препинания. Получить 100 наиболее часто встречающихся слов и число их появлений. Решить задачу без ограничения на длины слов.
Набросков нет, так как даже не могу понять какие функции использовать для этой задачи.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.02.2013, 17:09     Поиск наиболее часто встречающихся слов в файле
Посмотрите здесь:

C++ Наиболее часто встречающийся символ в текстовом файле
C++ 20 наиболее часто встречающихся слов
C++ Дан непустой массив из цифр. Вывести на экран цифру наиболее часто встречающихся в этом массиве.
Получить 10 наиболее часто встречающихся слов из файла C++
C++ priority_queue< int , char*, CompareHeap1 > pqMax (создать очередь с приоритетом для поиска 10 наиболее и наименее часто встречающихся слов) C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gazlan
2855 / 1803 / 271
Регистрация: 27.08.2010
Сообщений: 4,883
Записей в блоге: 1
25.02.2013, 23:07     Поиск наиболее часто встречающихся слов в файле #2
Составляете словарь из пар слово-счетчик. Считываете слово из файла. Если его нет в словаре - добавляете. Если есть - увеличиваете его счетчик на единицу. После окончания чтения файла сортируете словарь по полю "счетчик" и выводите первую сотню (если набралась).

Как вариант - с учетом "Решить задачу без ограничения на длины слов", храните не само слово, а его (подходящего размера) хэш (MurmurHash2, CityHash итп).
DIEZEL-man
13 / 13 / 0
Регистрация: 17.02.2013
Сообщений: 54
04.03.2013, 18:41  [ТС]     Поиск наиболее часто встречающихся слов в файле #3
up, прошу посмотреть, если не сложно
gazlan
2855 / 1803 / 271
Регистрация: 27.08.2010
Сообщений: 4,883
Записей в блоге: 1
04.03.2013, 20:22     Поиск наиболее часто встречающихся слов в файле #4
Цитата Сообщение от DIEZEL-man Посмотреть сообщение
up, прошу посмотреть, если не сложно
Посмотрите в этом топике: словарь частоупотребимих слов - там решалась очень похожая задача.

Смущает фраза "текст длиной более 5000 слов". Если это число фиксировано, то даже 5000+ записей несложно хранить в массиве. Если же нет - вам потребуется динамическая структура, допускающая сортировку (SortedList, например).

Про CityHash читать здесь: http://code.google.com/p/cityhash/
Yandex
Объявления
04.03.2013, 20:22     Поиск наиболее часто встречающихся слов в файле
Ответ Создать тему
Опции темы

Текущее время: 04:27. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru