Является ли (чистое) функциональное программирование антагонистом «классики алгоритмов»?

Классические книги алгоритмов (TAOCP, CLR) (и не такие классические, как fxtbook ) полны императивные алгоритмы. Это наиболее очевидно с алгоритмами, реализация которых в значительной степени основана на массивах, таких как комбинаторная генерация (где в алгоритме используются как индекс массива, так и значение массива) или алгоритм поиска объединения.

Анализ сложности наихудшего случая для них алгоритмы зависят от доступа к массиву, равного O (1). Если вы замените массивы постоянными структурами типа массивов, такими как Clojure, доступ к массиву больше не будет O (1), и анализ сложности этих алгоритмов больше не действителен.

Это подводит меня к следующим вопросам: несовместимо ли чисто функциональное программирование с литературой по классическим алгоритмам?

31
задан zvrba 1 August 2011 в 12:23
поделиться