crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

tri_d
  опции профиля:
сообщение 14.12.2014, 17:20
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 14.12.2014
Пользователь №: 4292

Спасибо сказали: 0 раз(а)




Репутация:   0  


Здравствуйте. Есть текст. Получаю список всех слов методом text.split(' '). На основании данного списка хотелось бы получить другой список следующего вида - слово1(n), слово2(m), cлово3(o). В скобках указано, сколько раз конкретное слово встречается в исходном списке. Как это можно сделать? Дайте какие-нибудь идеи
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
lanz
  опции профиля:
сообщение 14.12.2014, 21:32
Сообщение #2


Старейший участник
****

Группа: Участник
Сообщений: 690
Регистрация: 28.12.2012
Пользователь №: 3660

Спасибо сказали: 113 раз(а)




Репутация:   8  


Посчитать количество вхождений каждого слова в список.
Для хранения количества слов можно использовать QHash или QMap
http://qt-project.org/doc/qt-4.8/qmap.html#details
http://qt-project.org/doc/qt-4.8/qhash.html#details

В качестве ключей использовать слова, в качестве значений - количество вхождений.
Пройти список от начала к концу, для каждого слова, если оно есть в списке добавлять 1 к значению,
а если нет, то добавлять такой ключ со значением 1.

Потом пройти по контейнеру(QHash или QMap) и для каждого ключа составить строку, используя
http://qt-project.org/doc/qt-4.8/qstring.html#arg

Каждую такую строку добавить к результирующему списку.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 26.4.2025, 17:11