給定乙個非負整數 *numrows,*生成楊輝三角的前 numrows 行。
在楊輝三角中,每個數是它左上方和右上方的數的和。
示例:
輸入: 5
輸出:[
[1],
[1,1],
[1,2,1],
[1,3,3,1],
[1,4,6,4,1]
]
解法一:遞迴。
下面一行的m
值是由上面一行n
值決定的。比如下面一行的第i
個元素m[i]
值是由上面一行的第i-1
個元素的值n[i-1]
與第i個元素的值n[i]
的相加的和,如果i-1
是n
的最後乙個元素,那麼第i
個元素的值為0
即可。
class
solution
result =
generate
(numrows-1)
; list
list1 = result.
get(numrows -2)
;for
(int i =
0; i < numrows ; i++
)int num =
(i <= list1.
size()
-1)? list1.
get(i):0
;int prenum = list1.
get(i-1)
; list.
add(num+prenum);}
result.
add(list)
;return result;
}}
解法二:迭代,思路同上面的遞迴解法,換湯不換藥。
class
solution
list
pre = result.
get(i-1)
;for
(int j =
0; j <= i ; j++
)int num =
(j <= pre.
size()
-1)? pre.
get(j):0
;int prenum = pre.
get(j -1)
; list.
add(num+prenum);}
result.
add(list);}
return result;
}}
python楊輝三角 楊輝三角I II
給定乙個非負整數 numrows,生成楊輝三角的前 numrows 行。在楊輝三角中,每個數是它左上方和右上方的數的和。示例 輸入 5 輸出 1 1,1 1,2,1 1,3,3,1 1,4,6,4,1 可以一行一行錯位加,當然這裡提供更簡便的方法。任取一行描述 1,2,1 如何得到 1,3,3,1 ...
楊輝三角演算法集錦
name 楊輝三角集錦 author goal00001111 date 27 11 08 19 04 description 分別使用了二維陣列,一維陣列,佇列,二項式公式,組合公式推論和遞迴方法等10種演算法 演算法思路詳見 注釋 注釋很詳細,呵呵 include include using n...
演算法程式設計6 楊輝三角
給定乙個非負整數 numrows,生成楊輝三角的前 numrows 行 此題屬於動態規劃問題,針對此問題,首先找準規律 除第一行,每行第乙個元素和最後乙個元素都為1。其餘元素為左上方和右上方數之和。其次,找到特殊情況,第一行和第二行特殊,其餘都遵守規律。class solution def gene...