加泰罗尼亚语用函数式语言编号

时间:2014-02-08 18:49:02

标签: haskell functional-programming sml recurrence catalan

加泰罗尼亚数字满足复发

Catalan Recurrence

当然,加泰罗尼亚语数字具有涉及二项式系数的封闭形式表达式。我们也可以单独用C_ {n-1}表示C_n。我想知道的是如何在SML或Haskell等函数式语言中实现这种卷积。

1 个答案:

答案 0 :(得分:1)

当然你可以在haskell中实现加泰罗尼亚语数字(我认为ml系列也足够强大)!

但我想这不是你要找的答案。因此,我希望您熟悉基本的haskell语法,将加泰罗尼亚语数字视为函数catalan :: Int -> Int,任何一系列自然数都是这样的函数(适用于小索引)。但随着加泰罗尼亚语数字的快速增长,我将为我们函数的codomain选择Integer s(=任意大整数)的类型。

catalan :: Int -> Integer
catalan 0 = 1
catalan n = sum [ ?catalan magic? | i <- [1..n]]

我知道我几乎解决了这个问题,但仍有加泰罗尼亚魔法;-)你必须自己做。

但在我停止一些警告之前

  • 这个计算加泰罗尼亚数字的版本来自最佳或有效
  • 负输入值的情况未被处理。