// 杨辉三角-动态规划
// 输入: numRows = 5
// 输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]
public static List<List<Integer>> generate(int numRows){
List<List<Integer>> ret=new ArrayList<List<Integer>>();
for (int i = 0; i <numRows ; i++) {
List<Integer> row=new ArrayList<Integer>();
for (int j = 0; j <=i ; j++) {
if(j==0||j==i){
//自底向上
//[i][j]==1
row.add(1);
}else{
//[i][j]=[i-1][j-1]+[i-1][j]
row.add(ret.get(i-1).get(j-1)+ret.get(i-1).get(j));
}
}
ret.add(row);
}
return ret;
}
杨辉三角-动态规划
最新推荐文章于 2025-12-26 18:13:00 发布
本文介绍了如何使用动态规划的方法在Java中生成杨辉三角的示例,通过迭代构建每一行的元素,展示了递归调用和数组操作的应用。

2538

被折叠的 条评论
为什么被折叠?



