Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.10.2019, 17:04   #1
DamnedMacTavish
 
Аватар для DamnedMacTavish
 
Регистрация: 21.09.2019
Сообщений: 4
По умолчанию растояния между копиями в тексте.(С)

вот есть текст : йцукенгшщзхъфывапролцукенгджэячсмит ьбхъф
и нужно повторяющиеся последовательности символов найти
и расстояния между ними(нужны собсвенно только растояния )

получилось так Ж
цикл{
нахожу цукен цукен и растояние между ними 14 символов}
цикл{
нахожу цуке цуке и растояние между ними 15 символов
нахожу укен укен и растояние между ними 15 символов}
цикл{
нахожу цук цук и растояние между ними 16 символов
нахожу уке уке и растояние между ними 16 символов
нахожу кен кен и растояние между ними 16 символов
нахожу хъф хъф и растояние между ними 24 символа}

Вот собственопроблема! находить: укен, цуке, цук, кен, уке - нам не надо. Надо только цукен и хъф

хорошо бы все копии в одном цикле найти. но в одном цикле не получаетсяться т.к. при разной длинне повторяющихся последовательностей нужен разный шаг выбора позиции начала поиска копии.
Говоря простым языком если 3 символа повторяются то еще до начала поиска копии нужно отступить 3 символа от исходной последовательности , а если 5 то 5. + еще размер повторяющихся последовательностей может же быть от 3-ех до n символов + еще копих то может быть n штук.
мат!!!!!!Ц:У*:*Й?:
Вобщем может кто знает а-а-а-алгоритм нахождения этих копий и растояний между ними.
DamnedMacTavish вне форума Ответить с цитированием
Старый 10.10.2019, 17:50   #2
Black Fregat
Программист
Участник клуба
 
Аватар для Black Fregat
 
Регистрация: 23.06.2009
Сообщений: 1,772
По умолчанию

Цитата:
Сообщение от DamnedMacTavish Посмотреть сообщение
и растояние между ними 14 символов
Расстояние явно надо считать не между, а от первого символа первого вхождения до первого же символа второго вхождения
Black Fregat вне форума Ответить с цитированием
Старый 11.10.2019, 14:36   #3
evg_m
Старожил
 
Регистрация: 20.04.2008
Сообщений: 5,515
По умолчанию

Цитата:
может кто знает а-а-а-алгоритм
0. встаем на начало текста
1. берем минимально допустимую(по длине) последовательность с текущей позиции.
2. ищем повторы в продолжении текста и считаем расстояние.
3. проверяем более длинные последовательности СРЕДИ найденных( п.2) до исчерпания оных.
4. сдвигаем текущую позицию.
5. переходим к п.1
программа — запись алгоритма на языке понятном транслятору

Последний раз редактировалось evg_m; 11.10.2019 в 14:39.
evg_m на форуме Ответить с цитированием
Старый 24.10.2019, 16:37   #4
DamnedMacTavish
 
Аватар для DamnedMacTavish
 
Регистрация: 21.09.2019
Сообщений: 4
По умолчанию

просто дело такое что есть какой-то strcat(параметры) вроде, но он ищет повторы в строках , а не во всем тексте. да и нужно потом расстояния между повторами наййти.
DamnedMacTavish вне форума Ответить с цитированием
Старый 24.10.2019, 16:55   #5
Harriet
Новичок
Джуниор
 
Регистрация: 24.10.2019
Сообщений: 1
По умолчанию

Меня совсем другому учили... Где можно найти норм инфу, бросьте сайт, пжлст
Harriet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разные растояния между заголовком и текстом и подзаголовком bdfy Microsoft Office Word 0 30.09.2017 16:10
В тексте, содержащем между словами от 1 до 3 пробелов nik5-popov Паскаль, Turbo Pascal, PascalABC.NET 1 25.05.2013 11:12
Поиск маршрутов между двумя городами между n городов DorianMark Паскаль, Turbo Pascal, PascalABC.NET 11 09.11.2011 00:46
статья - Общение между запущенными копиями своих программ Pblog Обсуждение статей 0 27.02.2011 22:44
Переход между закладками в тексте одного стиля Окоча Юра Microsoft Office Word 3 01.02.2011 00:55