📅  最后修改于: 2023-12-03 14:55:03.646000             🧑  作者: Mango
斐波那契数列是指:0、1、1、2、3、5、8、13、21、34...... 这个数列从第3项起,每一项都等于前两项之和。即$F_n = F_{n-1} + F_{n-2}$。
斐波那契数列在计算机领域中应用广泛,例如:
斐波那契数列可用于股票价格的预测。 许多投资者认为,股票价格会在斐波那契数列中的特定位置反弹或突破,因此它们使用斐波那契数列来指导他们的交易决策。
斐波那契数列的应用还包括编程领域,例如搜索算法和排序算法。
斐波那契三角形是一个由斐波那契数列构成的特殊的数字或几何图形。 它由以下规则形成:
下面是一个示例:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
下面是通过编程生成斐波那契数列的 Python 代码,可以自行更换语言:
def fib(n):
a, b = 0, 1
for _ in range(n):
yield a
a, b = b, a + b
# 输出第10项以内的斐波那契数列
for i in fib(10):
print(i)
输出结果:
0
1
1
2
3
5
8
13
21
34
下面是通过编程生成斐波那契三角形的 Python 代码,可以自行更换语言:
def fib_triangle(n):
fib_list = []
a, b = 0, 1
for i in range(n):
fib_list.append([])
for j in range(i + 1):
if j == 0 or j == i:
fib_list[i].append(1)
else:
fib_list[i].append(fib_list[i-1][j-1] + fib_list[i-1][j])
return fib_list
# 输出前8行斐波那契三角形
n = 8
f = fib_triangle(n)
for i in range(n):
print(" "*(n-i), end="")
for j in range(i+1):
print(f[i][j], end=" ")
print()
输出结果:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
从以上代码中可以看到,我们通过使用嵌套的列表来存储构成斐波那契三角形的数字。 内部列表的长度是它所在的行数,而其值等于这一行中的某个斐波那契数。