|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
21.09.2012, 10:18 | #1 |
Пользователь
Регистрация: 11.10.2009
Сообщений: 79
|
Частотный словарь.
Добрый день. Нужно реализовать частотный словать (то есть у меня массив символов, надо подсчитать, сколько раз встречается каждый из них), но никак не получается.
Подскажите алгоритм ориентированный на Паскаль, пожалуйста. Последний раз редактировалось dixonich; 21.09.2012 в 10:21. |
21.09.2012, 10:29 | #2 |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Начиная с начала массива символов, перебором (1 цикл), считать каждый символ во втором цикле "пока не конец массива". Посчитанные символы помещать в множество и при переходе к каждому новому символу проверять, есть он в сете или нет (посчитан или не посчитан)
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
21.09.2012, 10:30 | #3 | |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Цитата:
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
|
21.09.2012, 10:55 | #4 | |
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
Цитата:
Для частоты одного символа достаточно переменной. Каждый из них (символов) Значит нужен массив частот. В начале подсчетов у нас все количества =0. Значит задаем массиву частот (всем элементам) начальные значения =0. Берем символ из исходного массива. Определяем нужную ячейку в массиве частот. Увеличиваем это значение на 1 переходим к следующему символу в исходной строке или заканчиваем подсчет. Выводим результаты (значения элементов массива частот).
программа — запись алгоритма на языке понятном транслятору
|
|
21.09.2012, 11:10 | #5 | |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Цитата:
Код:
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
|
21.09.2012, 11:20 | #6 |
МегаМодератор
СуперМодератор
Регистрация: 09.11.2010
Сообщений: 7,341
|
Да легче сразу задать массив для всех символов
a:array[0..255] of longint; И делать inc(a[ord(c)]);
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
|
21.09.2012, 11:31 | #7 | |||
Старожил
Регистрация: 20.04.2008
Сообщений: 5,528
|
Цитата:
Цитата:
Цитата:
программа — запись алгоритма на языке понятном транслятору
Последний раз редактировалось evg_m; 21.09.2012 в 11:34. |
|||
21.09.2012, 12:23 | #8 | |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Цитата:
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Частотный словарь текста (Си) | Taina | Помощь студентам | 6 | 20.06.2012 11:55 |
Частотный словарь. | dixonich | Общие вопросы по Java, Java SE, Kotlin | 5 | 19.09.2011 23:31 |
Java. Частотный словарь. | dixonich | Помощь студентам | 1 | 17.09.2011 07:39 |
частотный словарь с# | OLGUNYA | C# (си шарп) | 5 | 23.05.2011 14:50 |
частотный словарь в | sagitron | Microsoft Office Excel | 11 | 07.01.2010 20:55 |