帕斯卡三角形,和我国的杨辉三角形有异曲同工之妙,该三角形直观的展示了二项式定理中系数的大小。
由于算法竞赛相关需要,给出Python代码实现如下:
# 帕斯卡三角形题解
def pascalTriangle(N):
layerList = []
for layer in range(N):
# 解决每层第一个元素前面的空格问题
for space in range(N, layer + 1, -1):
print(end=' ')
layerList = dealList(layer, layerList)
for digit in layerList:
print("%d" % digit, end=" ")
print()
def dealList(layer, layerList):
tempList = [1]
if layer == 0 or layer == 1:
layerList.append(1)
return layerList
else:
for index in range(len(layerList)-1):
tempList.append(layerList[index] + layerList[index+1])
tempList.append(1)
return tempList
line = int(input("请输入帕斯卡三角形的行数"))
pascalTriangle(line)
输入参数line为4,在Pycharm的IDE下得到运行结果如图1所示。
图 1帕斯卡三角形Python程序运行结果图