列印楊輝三角(1)
使用遞迴演算法列印楊輝三角(小白第二次寫部落格)
'''列印如圖所示楊輝三角
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
1 10 45 120 210 252 210 120 45 10 1
'''
###########################以下采用遞迴方法去完成############
'''先考慮不列印每行前空格時的楊輝三角
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
1 10 45 120 210 252 210 120 45 10 1
把每一行寫成一個函式yh(n),每一列的結果是一個列表,有n個元素
考慮yh(n)和yh(n-1)的關係
對於yh(n)列表的第0個元素和n-1個元素,即yh(n)[0],yn(n)[n]值為1
其它元素則yh(n)[i]=yh(n-1)[i-1]+yh(n-1)[i]
'''
def yh(n):
if n == 0:
return [1]
elif n == 1:
return [1, 1]
else:
re = []
for i in range(n+1):
if i == 0 or i == n:
re.append(1)
else:
re.append(yh(n-1)[i-1] + yh(n-1)[i])
return re
#列印
n=9
for x in range(0, n+1):
print(" "*(n-x), end="")
for y in yh(x):
print('%4d'%y, end="")
print()
相關文章
- 楊輝三角列印10行
- Java基礎——列印楊輝三角Java
- Golang 遞迴列印楊輝三角Golang遞迴
- 7-3 列印楊輝三角 (20分) 本題要求按照規定格式列印前N行楊輝三角。
- 楊輝三角
- 08_楊輝三角
- 楊輝三角形
- 119. 楊輝三角 II
- LeetCode 118. 楊輝三角LeetCode
- HDU-2032-楊輝三角
- 20190105-列印字母C,H,N,口等影像和楊輝三角
- js中實現楊輝三角JS
- 杭電OJ 2032楊輝三角
- c語言筆記:楊輝三角C語言筆記
- 使用python生成楊輝三角形Python
- 經典演算法(5)楊輝三角演算法
- 楊輝三角(組合數)+排列組合
- LeetCode每日一題: 楊輝三角(No.118)LeetCode每日一題
- leedcode每日一題:118. 楊輝三角每日一題
- 佇列(楊輝三角)——鏈式佇列佇列
- leetcode第一百一十九題:楊輝三角ⅡLeetCode
- 前端演算法題:JS遞迴實現楊輝三角前端演算法JS遞迴
- Python計算組合數生成楊輝三角形Python
- 楊輝三角的5個特性,一個比一個牛皮!
- 增補部落格 第十八篇 python 楊輝三角形Python
- 組合數的計算(利用楊輝三角/記憶化搜尋)
- 藍橋杯第五屆JavaC組楊輝三角問題解決方法Java
- 組合數取模的幾種方法--Exlucas&楊輝三角&組合
- 藍橋杯-基礎練習-楊輝三角形(Python)AC程式碼PythonC程式
- 實驗四:採用一維陣列輸出等腰三角形的楊輝三角。陣列
- 微課|中學生可以這樣學Python(例6.1):楊輝三角形Python
- 領釦LintCode演算法問題答案-1354. 楊輝三角形II演算法
- 列印三角形
- JavaScript 列印星號三角形JavaScript
- Day17--列印三角形
- OceanBase CTO楊傳輝:放手去幹,這行沒有35歲危機
- JAVA基礎--小練習_列印正三角形Java
- WebGPU[1] 三角形WebGPU