📅  最后修改于: 2023-12-03 14:41:41.952000             🧑  作者: Mango
在 Haskell 中,斐波那契数列可以非常简洁地实现。在这个示例中,我们将看到如何使用递归来实现斐波那契数列。
fib :: Integer -> Integer
fib 0 = 0
fib 1 = 1
fib n = fib (n-1) + fib (n-2)
这个简短的代码实现了一个函数,该函数接受一个整数参数 n 并返回斐波那契数列的第 n 项。
这段代码使用一个递归函数来实现斐波那契数列。函数通过对前两个基本情况进行硬编码来起始递归。当 n 等于 0 时,该函数返回 0,当 n 等于 1 时,它返回 1。对于所有其他的情况,函数将递归调用自身来计算前两个斐波那契数的和。这个过程将一直持续到基本情况被满足为止。这个函数使用的是模式匹配与递归调用的组合。
我们可以直接调用 fib
函数并传入一个整数参数,比如:
fib 5
这将返回斐波那契数列的第 5 项。输出为:
5
通过这个简短的例子,我们可以看到 Haskell 的简洁性和递归的强大特性。这种方式可以使代码变得更加优美和易读。同时,有了对递归的理解,我们可以解决更多的问题和实现更多的算法。