中文

Catalan 数 $C(2,050,572,903)$ 的精确计算

数据结构与算法 2026-01-21 v1 组合数学

摘要

本文提出了一种两阶段算法,用于以前所未有的规模精确计算 Catalan 数。该方法通过计算 n=2,050,572,903n = 2,050,572,903 时的 C(n)C(n) 进行演示,得出具有目标 1,234,567,8901,234,567,890 位十进制数字的结果。为规避计算大阶乘时的内存限制,该算法完全在素数指数域内运行。阶段1采用并行分段筛法枚举不超过 2n2n 的素数,并应用 Legendre 公式确定 C(n)C(n) 的精确素数分解。素数按指数分组并序列化至磁盘。阶段2利用具有分块功能的内存高效平衡乘积树重建最终整数。该算法的时间复杂度为 Θ(n(logn)2)\Theta(n(\log n)^2) 次位运算,空间复杂度为 Θ(nlogn)\Theta(n \log n) 位。该结果代表了迄今为止计算出的最大精确 Catalan 数。报告了单机执行的统计性能,并讨论了验证策略——包括模检查与 SHA-256 哈希验证。提供了源代码与分解数据以确保可复现性。

关键词

引用

@article{arxiv.2601.11621,
  title  = {Exact Computation of the Catalan Number $C(2,050,572,903)$},
  author = {Mahesh Ramani},
  journal= {arXiv preprint arXiv:2601.11621},
  year   = {2026}
}

备注

9 pages, 2 algorithms, 2 tables. Source code available at https://github.com/Mahesh-Ramani/math-portfolio