Форум программистов, компьютерный форум, киберфорум
Наши страницы
Алгоритмы
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
Nescafe32
5 / 5 / 2
Регистрация: 07.05.2014
Сообщений: 101
1

Объяснить работу брутфорса

05.02.2015, 23:21. Просмотров 1002. Ответов 6
Метки нет (Все метки)

Добрый день. Полазил по нету и нашел много ответов типа "стыдно такого не знать". Выкладываю ход мыслей, прошу подсказки что не так.
Есть строка с буквами (большими и маленькими) и цифрами, к примеру. Мы вводим наш пароль. Ставим по указателю на строку с алфавитом и паролем. Если буква из алфавита совпадает с буквой нашего пароля - первый указатель (алфавитный) возвращаем в начало, второй указатель (парольный) двигаем вперёд, букву можно записать в некую строку. И так пока парольный указатель не будет указывать на ноль-символ.
P.S. при алфавите "йцукен...." "уцй" находит за 6 переборов, но размер кода (30 строк) меня смущает

Добавлено через 3 часа 36 минут
Условие: Написать программу для поиска в заданой строке k-го вхождения подстроки S1 и замены её на подстроку S2 (возможно другого размера). Использовать самый простой алгоритм (Брутфорс).
Условие переписал, но не понимаю что нужно

Добавлено через 4 минуты
Нашел еще в одном из вариантов. Определить номер позиции, с которой в заданой строке находится k-е вхождение заданой подстроки
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.02.2015, 23:21
Ответы с готовыми решениями:

Объяснить работу программы
Здравствуйте. Такая задача была: Нашёл на форуме подходящую рабочую программу, но не могу...

Объяснить работу кода
Объясните что это означает for(char *s=str; (s=strstr( s, "mama"))!=NULL && *s; s+=1, ++c)

Объяснить работу кода
{ get; private set; } - а что означает эти строки? и ведь может быть продолжение кода, как оно...

Объяснить работу программы
#include <stdio.h> #include <conio.h> #include <string.h> int main() { char mas; int...

Объяснить работу кода
#include <iostream> using namespace std; int main() { int i, j; for (i=2; i<6; i++) { for...

6
salam
189 / 170 / 29
Регистрация: 10.07.2012
Сообщений: 796
06.02.2015, 11:24 2
1. ну то, что вы описываете - вполне разумно. если вы реализуете это без ошибок, то будет вполне корректное решение. не понятно, какого вы хотите совета к этому.
2. про то, что "стыдно такого не знать". поиск подстроки в строке - это, наверное, самая известная задача после сортировки. решений у нее, наверное, столько же разных) в том числе и тех, что позволяют находить все вхождения за линейное время. это не простые алгоритмы, от вас их и не требуют. постепенно вы к ним обязательно придете.
0
Nescafe32
5 / 5 / 2
Регистрация: 07.05.2014
Сообщений: 101
09.02.2015, 23:14  [ТС] 3
Прошу прощения за долгое отсутствие. Если определение позиции я реализую, то в замене подстроки на другую я не могу понять саму суть (на какую строку менять)
0
wingblack
281 / 255 / 45
Регистрация: 09.04.2013
Сообщений: 955
10.02.2015, 12:55 4
Цитата Сообщение от Nescafe32 Посмотреть сообщение
на какую строку менять
Так в условии задачи же дано
Цитата Сообщение от Nescafe32 Посмотреть сообщение
Условие: Написать программу для поиска в заданой строке k-го вхождения подстроки S1 и замены её на подстроку S2
Вот находим k-тую S1 и вместо неё S2 вставляем.
0
Nescafe32
5 / 5 / 2
Регистрация: 07.05.2014
Сообщений: 101
11.02.2015, 10:58  [ТС] 5
То есть, если если строка "Завтра будет солнечный день", а нужно найти и заменить подстроку "солнечный", то подстрокой S2 будет " день"?
0
wingblack
281 / 255 / 45
Регистрация: 09.04.2013
Сообщений: 955
11.02.2015, 13:11 6
Лучший ответ Сообщение было отмечено Nescafe32 как решение

Решение

Исходная строка "Гуляют овцы и тут, и там"
k=2
S1 "и"
S2 "но явно не"

Результат должен быть "Гуляют овцы и тут, но явно не там"

Добавлено через 2 минуты
Цитата Сообщение от Nescafe32 Посмотреть сообщение
То есть, если если строка "Завтра будет солнечный день", а нужно найти и заменить подстроку "солнечный", то подстрокой S2 будет " день"?
Подстрока S2 может быть любой произвольной строкой, S1 кстати тоже, просто мы надеемся что в заданной строке S1 все же есть, но в общем случае её может и не быть.
0
Nescafe32
5 / 5 / 2
Регистрация: 07.05.2014
Сообщений: 101
11.02.2015, 22:02  [ТС] 7
Вот теперь понял, благодарю
0
11.02.2015, 22:02
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.02.2015, 22:02

Объяснить работу кода
Объясните пожалуйста работу этого кода. Нужен этот алгоритм, но МАТЛАБ не знаю. function...

Объяснить работу конструктора
простите за тупое название темы Добрый вечер, возникла проблема в изучении деструкторов целом...

Объяснить работу программы
Во введенном слове подсчитать количество различных пар букв. Например, в слове babacabacd 5...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.