Форум программистов, компьютерный форум, киберфорум
Наши страницы
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/12: Рейтинг темы: голосов - 12, средняя оценка - 4.67
G-Style
0 / 0 / 0
Регистрация: 19.04.2010
Сообщений: 3
1

Пояснить суть алгоритма поиска с возвратом

07.01.2011, 15:03. Просмотров 2229. Ответов 2
Метки нет (Все метки)

Здравствуйте) Ни как не могу понять "смысл" алгоритма с возвратом... Какая у него функция? может кто подскажет...
0
Лучшие ответы (1)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.01.2011, 15:03
Ответы с готовыми решениями:

Пояснить суть структуры список
дошел до понимания необходимости знания про структуру список, хто знает как...

Пояснить код и его суть
Обьясните пожалуйста что делает эта программа, пожалуйста подробнее, если...

Найти точку минимума функции методом случайного поиска с возвратом и наилучшей пробы
Здравствуйте. помогите решить задачку. надо найти точку минимума функции...

Задания: Используя в качестве вспомогательного алгоритма поиска максимума из трёх чисел
M=(max⁡(a,b,c)+max⁡(c,d,e))/(max⁡(b,d,a))

Составить блок – схему алгоритма и определить, что выводится в результате выполнения следующего алгоритма
Всем привет. Помогите плиз. Составить блок – схему алгоритма и определить, что...

2
Erdinal
4 / 4 / 1
Регистрация: 22.10.2010
Сообщений: 19
07.01.2011, 18:40 2
ну смысл возврата таков: ты что-то ищешь, среди кучи разветвлений и поочередно заходишь в каждое, если не находишь искомое, то здесь срабатывает возврат и ты снова попадаешь на начальную развилку с информацией, что какой-то путь просмотрен
1
oleg9308
2 / 2 / 2
Регистрация: 18.02.2011
Сообщений: 28
22.02.2011, 21:58 3
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

например так:

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
uses crt;
type
mas=array [1..100] of integer;
var
n,i:integer;
a,p:mas;
procedure vivod(n:integer; var p:mas);
var i,j,imax:integer;
begin
imax:=1;{определяем количество блоков в разбиении}
for i:=2 to n do
if p[i]>imax then imax:=p[i];
for i:=1 to imax do {цикл по блокам}
begin
write('{');
for j:=1 to n do
if p[j]=i then write(a[j],' ');
write('} ') {блок напечатан}
end;
writeln; {разбиение напечатано}
end;
procedure razb(i, j: integer); {i- рассматриваемый элемент}
var l: integer; {j- макс. количество блоков в разбиении}
begin {р - массив пометок, принадлежности к блоку разбиения}
if i > n then vivod(n, p)
else
for l := 1 to j do {Просматриваем все доступные блоки}
begin
p[i] := l; {Ставим i-й элемент в l-й блок, l=1,..,j}
if l = j then razb(i+1, j+1) {Все блоки отработаны, переходим к следующему элементу i+1
и добавляем новый блок j+1}
else razb(i+1, j) {Переходим к следующему элементу i+1 не добавляя блок}
end;
end;
begin
writeln ('Vvedite kol. el. v mnoj');
readln(n);
writeln('vvedite elementi mnoj');
for i:= 1 to n do
read(a[i]);
razb(1,1);
readln;
end.
2
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.02.2011, 21:58

Алгоритмы с возвратом
У Томми есть много бумажных квадратиков. Длинна из стороны (размер) изменяется...

Алгоритмы с возвратом
Задача сложная, по этому и прошу помощи. Безопасные пути. В некотором...

Использование алгоритма поиска с возвратом
Добрый день, помогите пожалуйста решить проблему. Очень долго не могу составить...


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

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

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