求杨辉三角的前n行数据_LeetCode算法第118题:杨辉三角
生活随笔
收集整理的這篇文章主要介紹了
求杨辉三角的前n行数据_LeetCode算法第118题:杨辉三角
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目描述:
給定一個非負整數 numRows,生成楊輝三角的前 numRows 行。
在楊輝三角中,每個數是它左上方和右上方的數的和。
示例:
輸入: 5輸出:[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]思路:
楊輝三角形有如下兩個特性
因此在計算楊輝三角形的時候,首先取出它的上一行的數據,在改行的第一個元素和最后一個元素都添加1。然后遍歷上一行元素,將對應位置的元素取值相加,并將結果添加到改行指定位置上。
Java代碼:
public List> generate(int numRows) {List> result = new ArrayList();if(numRows < 1){return result;}List row1 = new ArrayList();row1.add(1);result.add(row1);for(int i=1; i preRow = result.get(i-1);List row = new ArrayList();row.add(1);for(int j=1;j總結
以上是生活随笔為你收集整理的求杨辉三角的前n行数据_LeetCode算法第118题:杨辉三角的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 函数使用了堆栈的字节超过_单片机地址空间
- 下一篇: 求两条轨迹间的hausdorff距离_自