首页 / 数学计算 / 阶乘递归调用可视化
免费在线工具

阶乘递归调用可视化

输入0至200的一个整数,查看阶乘factorial调用链、逐层缩进和精确BigInt结果。0和1均返回1;不执行用户代码,不显示动画或独立返回步骤。

开始使用

用阶乘理解递归调用链

阶乘满足n! = n × (n−1)!,基本情形是0! = 1、1! = 1。输入4时,页面依次展示factorial(4)、factorial(3)、factorial(2)、factorial(1),最后结果24;每深入一层,行首增加两个空格。

factorial(4)
  factorial(3)
    factorial(2)
      factorial(1)
结果:24

输入0和1各只有一次调用,结果均为1,不会继续调用factorial(-1)。输入5可核对5次调用,最深处8个行首空格,结果120。工具显示静态调用轨迹和最终结果,不逐步播放动画,也不逐项列出返回时的乘法。

乘法使用BigInt,因此200!的375位十进制整数会完整显示,不会转成指数记法。调用次数为max(1,n),但累计缩进空格为n(n−1),轨迹总字符数随n二次增长,所以把n限制为200。这里的字符增长说明不等于BigInt乘法本身的时间复杂度。

仅接受0至200的一个整数字面值。可以有正负号或前导零,但最终数值必须在范围内;拒绝小数、指数记法、列表、内部空白或混合文字。数字会规范化,计算只在浏览器进行。它只演示阶乘,不执行用户代码,不提供斐波那契或其他递归函数选择。

此工具无需安装,所有处理均在当前浏览器本地完成,不会上传输入内容或本地文件。