![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#21 | ||||
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
![]() Цитата:
Цитата:
Строку надо разбить на слова в любом случае. Но его решение сложности O(N^2), а тут есть O(N*log(N)). Вся разница в поиске (у Chainik!) он занимает линейное время, но поиск в словаре - логарифмическое. Цитата:
Цитата:
Если ты пишешь имя в кавычках - файл будет искаться сначала в каталоги сборки, а потом в стандартном каталоге (а это долго). Если пишешь имя в угловых скобках - ищет только в стандартном каталоге. Поэтому если ты хочешь свои хедеры подключать с квадратными скобками - скопируй их в стандартный каталог xD, а остальные желающие собрать твое творение будут недовольны. Последний раз редактировалось rrrFer; 02.09.2013 в 19:41. |
||||
![]() |
![]() |
![]() |
#22 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]() |
![]() |
![]() |
![]() |
#23 | |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
![]() Цитата:
Что значит "лишние"? |
|
![]() |
![]() |
![]() |
#24 |
Форумчанин
Регистрация: 10.11.2008
Сообщений: 120
|
![]()
Но его решение сложности O(N^2), а тут есть O(N*log(N)).
Вся разница в поиске (у Chainik!) он занимает линейное время, но поиск в словаре - логарифмическое. Покажите как надо написать эту прогу, но только через посимвольную обработку, примерно как у меня....
помог - жми на весы
![]() Последний раз редактировалось Chainik!; 02.09.2013 в 20:19. |
![]() |
![]() |
![]() |
#25 | |
Форумчанин
Регистрация: 03.01.2013
Сообщений: 388
|
![]() Цитата:
Можно использовать такой алгоритм посимвольной обработки строки: Можно ведь найти позицию начала и конца СРАВНИВАЕМОГО слова, затем прогнать строку с целью поиска слов, при этом, для каждого найденного слова определить позиции начала/конца и сравнивать посимвольно со СРАВНИВАЕМЫМ словом. Если совпало, значит найдено похожее слово, нет - пробегаем дальше, до конца строки в аналогичном поиске. Т.е: Пока не конец строки ищем СРАВНИВАЕМЫЕ слова, каждый раз, когда найдено СРАВНИВАЕМОЕ слово пробегаем по строке + ищем слова + сравниваем со СРАВНИВАЕМЫМ словом. Такой вот алгоритм по которому теперь можно написать код и отладить его, в случае ошибки ![]() Теперь не нужно разбивать строку на токены. Последний раз редактировалось Igor95; 02.09.2013 в 20:30. |
|
![]() |
![]() |
![]() |
#26 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]()
"лишние" - это я так знаки препинания обозвал. Точка, как часть слова - не считаю знаком препинания: text.txt, main.cpp и т.д.
Последний раз редактировалось 8Observer8; 02.09.2013 в 21:22. |
![]() |
![]() |
![]() |
#27 |
Форумчанин
Регистрация: 03.01.2013
Сообщений: 388
|
![]() |
![]() |
![]() |
![]() |
#28 |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]() |
![]() |
![]() |
![]() |
#29 | |
Форумчанин
Регистрация: 03.01.2013
Сообщений: 388
|
![]() Цитата:
Вообще, мы недолжны думать, что разделители будут такие, под которые адаптирована обработка строки. Не будем предполагать, что клиент подаст нам на обработку строку, в которой разделители - одни точки да запятые. Выход такой: передать в функцию строку с разделителями. Таким образом можно работать с любой строкой. Беспроигрышный вариант, на мой взгляд ![]() Последний раз редактировалось Igor95; 02.09.2013 в 21:55. |
|
![]() |
![]() |
![]() |
#30 | |
Старожил
Регистрация: 02.01.2011
Сообщений: 3,328
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Подсчитать количество слов в строке | Chainik! | Общие вопросы C/C++ | 31 | 10.04.2016 01:55 |
Подсчет одинаковых слов в строке | versegg | Помощь студентам | 0 | 27.05.2012 19:39 |
Количество одинаковых слов в строке. Delphi | topside | Помощь студентам | 10 | 30.10.2011 23:05 |
Подсчитать количество слов и количество букв | MDSIQ | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 1 | 13.11.2010 16:57 |