杨辉三角JAVA实现
给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。
在「杨辉三角」中,每个数是它左上方和右上方的数的和。
示例 1:
输入: numRows = 5
输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]
示例 2:
输入: numRows = 1
输出: [[1]]
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/pascals-triangle
最近越来越菜,只能刷力扣简单题找回点自信,话不多时直接上代码.
import java.util.LinkedList;
import java.util.List;
//leetcode submit region begin(Prohibit modification and deletion)
class Solution {
public List<List<Integer>> generate(int numRows) {
List<List<Integer>> lists=new LinkedList<>();
if(numRows==0)
{
return lists;
}
List<Integer> list1=new LinkedList<>();
List<Integer> list2=new LinkedList<>();
list1.add(1);
lists.add(list1);
if(numRows==1)
return lists;
list2.add(1);
list2.add(1);
lists.add(list2);
for(int i=3;i<=numRows;i++)
{
List<Integer> list=new LinkedList<>();
list.add(1);
int size=list2.size();
for(int j=1;j<size;j++)
{
list.add(list2.get(j)+list2.get(j-1));
}
list.add(1);
list2=list;
lists.add(list);
}
return lists;
}
}