LINUX.ORG.RU

История изменений

Исправление Nervous, (текущая версия) :

линукс для умных

4.2

Чё я один такой глупый

Дело не в глупости, просто надо 1) раскурить, как писать рекурсивные алгоритмы, в теории (SICP) и на практике (Little Schemer, HTDP — там есть вполне конкретные рекомендации, прямо по шагам) и 2) правильно (рекурсивно) сформулировать задачу.

Типа «список это пустой список или элемент, прицепленный к списку» (рекурсивное определение данных), "чтобы найти все элементы списка, равные указанному значению, нужно

  • если список пустой, вернуть его
  • если список непустой, проверить голову списка; если равна искомому значению, вернуть список, полученный прицеплением головы к результату поиска в хвосте списка, иначе вернуть результат поиска в хвосте списка"

(линейно рекурсивный алгоритм).

Задача решена, перевести это дело на луа/петон/жопаскрипт — дело тривиальное, напряжения головы уже не требующее.

Исправление Nervous, :

линукс для умных

4.2

Чё я один такой глупый

Дело не в глупости, просто надо 1) раскурить, как писать рекурсивные алгоритмы, в теории (SICP) и на практике (Little Schemer, HTDP — там есть вполне конкретные рекомендации, прямо по шагам) и 2) правильно (рекурсивно) сформулировать задачу.

Типа «список это пустой список или элемент, прицепленный к списку» (рекурсивное определение данных), "чтобы найти все элементы списка, равные указанному значению, нужно

  • если список пустой, вернуть его
  • если список непустой, проверить голову списка; если равна искомому значению, вернуть список, полученный прицеплением головы к результату поиска в хвосте списка, иначе вернуть результат поиска в хвосте списка

(линейно рекурсивный алгоритм).

Задача решена, перевести это дело на луа/петон/жопаскрипт — дело тривиальное, напряжения головы уже не требующее.

Исходная версия Nervous, :

линукс для умных

4.2

Чё я один такой глупый

Дело не в глупости, просто надо 1) раскурить, как писать рекурсивные алгоритмы, в теории (SICP) и на практике (Little Schemer, HTDP — там есть вполне конкретные рекомендации, прямо по шагам) и 2) правильно (рекурсивно) сформулировать задачу.

Типа «список это пустой список или элемент, прицепленный к списку» (рекурсивное определение данных), "чтобы найти все элементы списка, равные указанному значению, нужно

  • если список пустой, вернуть его
  • если список непустой, проверить голову списка; если равна искомому значению, вернуть список, полученный прицеплением головы к результату поиска в хвосте списка, иначе вернуть результат поиска в хвосте списка (линейно рекурсивный алгоритм).

Задача решена, перевести это дело на луа/петон/жопаскрипт — дело тривиальное, напряжения головы уже не требующее.