利用队列实现打印杨辉三角要源码事例
时间: 2024-10-22 16:15:21 浏览: 40
打印杨辉三角python实现源码.zip
杨辉三角是一种二项式系数的几何排列,通常用一个二维数组表示。利用队列(Queue)来实现打印杨辉三角,可以按照“自顶向下”的原则逐层添加数字,并在每一层中使用队列作为栈,保证每次取出的是当前行的第一个元素。
以下是一个简单的Python代码示例,它使用两个嵌套的循环和一个队列来构建并打印杨辉三角:
```python
from collections import deque
def print_pascal_triangle(n):
# 初始化队列,用于存储当前行的数据
triangle = deque()
for i in range(n):
# 将前一行的所有元素入队
triangle.clear()
if i > 0:
triangle.extend(range(1, i+1))
while len(triangle) > 1:
# 出队第一个元素,然后将前一位置的元素加入队列
print(triangle.popleft(), end=' ')
triangle.append(triangle[-1])
# 输出最后一行(只有一个元素)
print(i+1, end=' ' if i < n-1 else '\n')
# 打印5阶的杨辉三角
print_pascal_triangle(5)
```
这个程序会输出从1到n^2的杨辉三角的前n行。运行`print_pascal_triangle(5)`,你会看到5阶杨辉三角的结果。
阅读全文