Java 中的四重数

2025年5月12日 | 阅读 3 分钟

在本节中,我们将学习什么是 Tetranacci 数,并创建 Java 程序 来检查给定数字是否为Tetranacci 数Tetranacci 数程序经常出现在 Java 编码面试和学术中。

Tetranacci 数

Tetranacci 数斐波那契数相似。唯一的区别是斐波那契数依赖于前两个斐波那契数,而 Tetranacci 数依赖于前四个 Tetranacci 数。

数学上,Tetranacci 数表示为

T(0) = 0,

T(1) = 1,

T(2) = 1,

T(3) = 2,

T(n) = T(n - 4) + T(n - 3) + T(n - 2) + T(n - 1),其中 n >= 4

因此,

T(4) = T(0) + T(1) + T(2) + T(3) = 0 + 1 + 1 + 2 = 4

T(5) = T(1) + T(2) + T(3) + T(4) = 1 + 1 + 2 + 4 = 8

T(6) = T(2) + T(3) + T(4) + T(5) = 1 + 2 + 4 + 8 = 15

T(7) = T(3) + T(4) + T(5) + T(6) = 2 + 4 + 8 + 15 = 29

T(8) = T(4) + T(5) + T(6) + T(7) = 2 + 4 + 8 + 15 + 29 = 56

Java Tetranacci 数程序:迭代方法

以下程序使用上面定义的数学公式生成 Tetranacci 数。

文件名: TetranacciNumberIterative.java

输出

The first 20 Tetranacci numbers are: 
0 1 1 2 4 8 15 29 56 108 208 401 773 1490 2872 5536 10671 20569 39648 76424

Java Tetranacci 数程序:递归方法

如果我们把前四个 Tetranacci 数的值看作是基础情况,那么上面提到的数学公式也可以用来递归地找到其他的 Tetranacci 数。下面的代码使用上述数学公式来递归生成下一个 Tetranacci 数。

文件名: TetranacciNumberRecursive.java

输出

The first 20 Tetranacci numbers are: 
0 1 1 2 4 8 15 29 56 108 208 401 773 1490 2872 5536 10671 20569 39648 76424