powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Императивный алгоритм -> в рекурсивный: обучение на примерах.
22 сообщений из 22, страница 1 из 1
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37835947
Bananas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть задачи, которые невозможно решить императивным алгоритмом - только рекурсивным? Есть задачи, которые ярко демонстрируют разницу в императивном и рекурсивном мышлении? Нужно что-то вроде следующего: список задач, которые нужно преобразовать в алгоритмы -> составить по задаче императивный алгоритм -> составить по задаче рекурсивный алгоритм.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37835967
Edd.Dragon
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Любая задача, которую можно решить и так, и так ЯРКО демонстрирует разницу. Было бы удивительно, если бы нет =)))

Тот же факториал вычисли.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836012
Bananas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Edd.Dragon, список задач можете набросать? Или где их взять? Т.к. у меня с алгоритмами не очень, то хотелось бы те, которые уже разобрали - не все, конечно, хотя бы пяток.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836024
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BananasЕсть задачи, которые невозможно решить императивным алгоритмом - только рекурсивным?
1. Любая задача, которая может быть решена рекурсивным алгоритмом, может быть решена и нерекурсивным. Это тривиальная теорема, доказываемая на первом курсе любого приличного ВУЗа. Как правило, нерекурсивное решение несколько более громоздко и несколько более эффективно.

2. "Императивный алгоритм" - это некий странный термин. Если Вы имеете в виду противопоставление "алгоритмического" и "функционального" подходов, то.. да собственно берите любые задачи.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836038
Abstraction
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BananasЕсть задачи, которые невозможно решить императивным алгоритмом - только рекурсивным? Есть задачи, которые ярко демонстрируют разницу в императивном и рекурсивном мышлении? Нужно что-то вроде следующего: список задач, которые нужно преобразовать в алгоритмы -> составить по задаче императивный алгоритм -> составить по задаче рекурсивный алгоритм.
Странное противопоставление: "императивный vs рекурсивный".
Любая задача, использующая рекурсию, может быть решена без неё заменой рекурсивного вызова на безусловный переход с использованием дополнительной структуры данных "очередь", хранящей параметры старого вызова.
"Рекурсивное мышление" - видимо, представление задачи в виде задачи вычисления рекуррентно заданной последовательности; "императивное мышление" тогда, наверное - её представление в виде вычисления последовательности с явно заданным членом.
Пример: "вычислить биноминальный коэффициент (n, k) опираясь на формулу (n, k) = (n-1, k) + (n-1, k-1); (n, 0) = (n, n) = 1".
Простой рекурсивный алгоритм будет катастрофически медленным и прожорливым по памяти; простой "императивный", опирающийся на явное выражение (n, k) = n!/(k!*(n-k)!) быстро столкнётся с проблемами переполнения и также будет медленным.

Возможно, топикстартеру следует привести свои определения "рекурсивного" и "императивного" алгоритма для более предметного разговора.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836152
Bananas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Abstraction, давно уже задавал похожий вопрос, но из-за занятости на работе забросил. Сейчас нашел тему - с задачами вроде понятнее стало.
Императивный алгоритм - тот, которому обучают на программировании: набор шагов в цикле for, например. Рекурсивный - соответственно "функция, вызывающая саму себя".

з.ы. есть идея составить что-то вроде научно-популярной книжки, как книги Перельмана, например. Чтобы любой желающий выработать в себе навык алгоритмического мышления, мог самостоятельно это сделать. Опубликовать, само собой, в свободном доступе (под лицензией creative common, вроде, нужно).
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836178
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Рекурсию всегда можно представить итерацией (об этом softwarer уже написал). Доказательство этой теоремы вполне конструктивное.
ПС. Я делю языки программирования на императивные, где по очереди выполняются инструкции, на функциональные (типа лиспа), ну и ещё всякая экзотика бывает (даже не вникал).
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836188
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeПС. Я делю языки программирования на императивные, где по очереди выполняются инструкции, на функциональные (типа лиспа),
Ну в лиспе они тоже не рандомно выбираются :) При этом существуют и "довольно императивные по виду" реализации лиспа.

Я бы сказал, разница между "алгоритмическими" и "функциональными" языками в том, что в последних фактически редуцировано понятие "оператор".
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836199
Фотография k0rvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeЯ делю языки программирования на императивные, где по очереди выполняются инструкции, на функциональные (типа лиспа)...

Common Lisp:

Код: plaintext
1.
2.
3.
4.
(defun imperative-factorial (n)
  (do ((i 2 (1+  i))
       (p 1 (* p i)))
      ((> i n) p)))
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836346
Фотография k0rvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BananasИмперативный алгоритм - тот, которому обучают на программировании: набор шагов в цикле for, например. Рекурсивный - соответственно "функция, вызывающая саму себя".

SICP 1.2Противопоставляя итерацию и рекурсию, нужно вести себя осторожно и не смешивать понятие рекурсивного процесса с понятием рекурсивной процедуры. Когда мы говорим, что процедура рекурсивна, мы имеем в виду факт синтаксиса: определение процедуры ссылается (прямо или косвенно) на саму эту процедуру. Когда же мы говорим о процессе, что он следует, скажем, линейно рекурсивной схеме, мы говорим о развитии процесса, а не о синтаксисе, с помощью которого написана процедура.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836380
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BananasРекурсивный - соответственно "функция, вызывающая саму себя".
Вовсе не обязательно. Первая функция может вызывать вторую, а та - третью, которая вызывает первую.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836384
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Edd.DragonЛюбая задача, которую можно решить и так, и так ЯРКО демонстрирует разницу. Было бы удивительно, если бы нет =)))

Тот же факториал вычисли.э не, при вычислении фкторил порождется итертивный процесл(использемя пмять - констнт)

вот поиск в глбину - порождет рекурсивный процесс, незвисимо от того, релизовли мы его через рекурсивные вызовы, или использум стек вручную, но используемя пмять - уже не констнт.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836390
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
k0rvinBananasИмперативный алгоритм - тот, которому обучают на программировании: набор шагов в цикле for, например. Рекурсивный - соответственно "функция, вызывающая саму себя".

SICP 1.2Противопоставляя итерацию и рекурсию, нужно вести себя осторожно и не смешивать понятие рекурсивного процесса с понятием рекурсивной процедуры. Когда мы говорим, что процедура рекурсивна, мы имеем в виду факт синтаксиса: определение процедуры ссылается (прямо или косвенно) на саму эту процедуру. Когда же мы говорим о процессе, что он следует, скажем, линейно рекурсивной схеме, мы говорим о развитии процесса, а не о синтаксисе, с помощью которого написана процедура.о, то о чем я выше и писл. глвное не синтксичискя зпись, но порождющий процесс.
и некоторые рекурсивные процессы невозможно переделть в итертивные.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836399
Фотография k0rvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaN,

Ты в отпуске что ли? =)
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836402
ShSerge
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaN...и некоторые рекурсивные процессы невозможно переделть в итертивные.
Возможно.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836407
Фотография k0rvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaNэ не, при вычислении фкторил порождется итертивный процесл(использемя пмять - констнт)

это смотря как написать, если, например, так:
Код: plaintext
1.
2.
3.
factorial n = if n < 2
    then 1
    else n * (factorial (n - 1))

то процесс будет в общем случае рекурсивным.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836409
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
k0rvinZyK_BotaN,

Ты в отпуске что ли? =)почти. уволился, тк кк не хотел сидеть в киеве все лето.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836412
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
k0rvinZyK_BotaNэ не, при вычислении фкторил порождется итертивный процесл(использемя пмять - констнт)

это смотря как написать, если, например, так:
Код: plaintext
1.
2.
3.
factorial n = if n < 2
    then 1
    else n * (factorial (n - 1))
то процесс будет в общем случае рекурсивным.ну д, но в целях эффективности, желтельно стремиться к итертивному(если конечно глубыин рекурсии велик, если мл - то можно и рекурсивный зббхть)
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836415
Фотография k0rvin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ZyK_BotaNпочти. уволился, тк кк не хотел сидеть в киеве все лето.
То-то я смотрю опечаток много... =)
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836418
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
k0rvinZyK_BotaNпочти. уволился, тк кк не хотел сидеть в киеве все лето.
То-то я смотрю опечаток много... =)клвитур не рботет.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836464
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShSergeПС. Я делю языки программирования на императивные, где по очереди выполняются инструкции, на функциональные (типа лиспа), .

Лисп не функциональный. Лисп гибридный.
...
Рейтинг: 0 / 0
Императивный алгоритм -> в рекурсивный: обучение на примерах.
    #37836526
Фотография ZyK_BotaN
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivShSergeПС. Я делю языки программирования на императивные, где по очереди выполняются инструкции, на функциональные (типа лиспа), .

Лисп не функциональный. Лисп гибридный.вечный спор :)
смирить, что "не лисперы" и "не функционльщики" считют лисп функционльным.
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Императивный алгоритм -> в рекурсивный: обучение на примерах.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]