加泰罗尼亚语数字
让我们考虑在Julia语言中计算加泰罗尼亚语数字的算法的实现。
导言
在这个例子中,我们将研究计算加泰罗尼亚数字的算法的实现,这是一个自然数序列,在组合学和数学的其他领域很重要。 我们将看看加泰罗尼亚数字计算函数是如何工作的,以及它如何应用于一系列值和大数。
什么是加泰罗尼亚数字?
加泰罗尼亚数字是一个数字序列,经常发现在组合问题。 例如,它们用于计算正确括号序列的数量,格子上的路径数量,将多边形分割成三角形的方式数量等等。
计算第n个加泰罗尼亚数的公式如下所示:
哪里 -二项式系数。
代码中使用了这个公式。
    In [ ]:
# Определяем функцию для вычисления числа Каталана
# n::Integer означает, что аргумент должен быть целым числом
# binomial(2n, n) вычисляет биномиальный коэффициент
# ÷ обозначает целочисленное деление
catalannum(n::Integer) = binomial(2n, n) ÷ (n + 1)
Out[0]:
计算1到15范围内的加泰罗尼亚语数字
功能 catalannum.(1:15) 应用函数 catalannum 对于从1到15范围内的每个元素。 函数名后面的点表示矢量化,即函数对集合的每个元素的应用。
结果将是从1到15的加泰罗尼亚数字数组。
    In [ ]:
# Применяем функцию к диапазону от 1 до 15
catalannum.(1:15)
Out[0]:
计算第100个加泰罗尼亚语数
要计算大的加泰罗尼亚数字,使用函数 big(100),它将数字100转换为类型 BigInt. 这允许您处理大于整数类型标准尺寸的数字,以避免溢出。
结果将是第100个加泰罗尼亚数字,表示为一个大整数。
    In [ ]:
# Вычисляем 100-е число Каталана, используя BigInt
catalannum(big(100))
Out[0]:
结论
我们已经回顾了在Julia语言中计算加泰罗尼亚语数字的算法的实现。 已创建函数 catalannum,其中使用二项式系数来计算加泰罗尼亚数字。 我们将其应用于从1到15的范围,并使用 BigInt. 这使您可以有效地使用加泰罗尼亚数字的小值和大值。 这种计算在组合学、算法分析和数学的其他领域是有用的.
该示例是使用[Rosetta代码]的材料开发的(https://rosettacode.org/wiki/Catalan_numbers )