L'algorithme classique des livres (TAOCP, CLR) (et pas de manière classique, comme l' fxtbook)sont pleins de impératif des algorithmes. Cela est encore plus évident avec des algorithmes dont la mise en œuvre est fortement basée sur les tableaux, comme la combinatoire génération (où les deux index de tableau et tableau de valeur sont utilisés dans l'algorithme) ou de l'union-find algorithme.
Le pire des cas, l'analyse de la complexité de ces algorithmes dépend de l'accès à des tableaux être O(1). Si vous remplacez des tableaux avec des array-ish persistante des structures, telles que Clojure, l'accès à des tableaux ne sont plus O(1), et l'analyse de la complexité de ces algorithmes n'est plus valide.
Ce qui m'amène aux questions suivantes: est de la pure programmation fonctionnelle incompatible avec les algorithmes classiques de la littérature?