Сгиб (функция высшего порядка)

Сгиб (функция более высокого порядка) Определение и применение функции fold Функция fold объединяет элементы списка, используя бинарную операцию f.  Начальное […]

Сгиб (функция более высокого порядка)

  • Определение и применение функции fold

    • Функция fold объединяет элементы списка, используя бинарную операцию f. 
    • Начальное значение z используется для инициализации процесса сворачивания. 
    • Складывание может быть линейным или древовидным, в зависимости от порядка оценки аргументов функции f. 
  • Линейные складки

    • Используют начальное значение z для инициализации процесса сворачивания. 
    • Применяют бинарную операцию f к первому элементу списка и результату предыдущего сворачивания. 
    • Если список пуст, возвращается начальное значение z. 
  • Древовидные складки

    • Используют весь список для инициализации процесса сворачивания. 
    • Применяют бинарную операцию f ко всем элементам списка и результату предыдущего сворачивания. 
  • Примеры использования fold

    • Складывание строки с помощью Haskell. 
    • Рекурсивное построение простых чисел с помощью Haskell. 
    • Сортировка слиянием и nubsort с использованием древовидного сворачивания. 
  • Универсальность функции fold

    • Может быть использована для полиморфных функций. 
    • В ленивых языках с бесконечными списками может быть использована для реализации комбинатора с фиксированной точкой. 
  • Рекомендации и внешние ссылки

    • Ссылки на дополнительные ресурсы и материалы по функциям более высокого порядка. 

Полный текст статьи:

Сгиб (функция высшего порядка) — Википедия

Оставьте комментарий

Прокрутить вверх