List
思路想出来了,但是对于list的使用还是不会不熟练。考虑时错认为最开始需要定好list的长度,其实是使用add往里添加元素的。所以看了题解。
这执行也不怎么样哇。
![]()
package leetcode01;
import java.lang.annotation.Retention;
import java.util.*;
//给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 在「杨辉三角」中,每个数是它左上方和右上方的数的和
//思路想出来了,但是对于list的使用还是不会不熟练。考虑时错认为最开始需要定好list的长度,其实是使用add往里添加元素的。
public class Solution118 {
public static List<List<Integer>> generate(int numRows) {
List<List<Integer>> res = 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) {
row.add(1);
}
else {
row.add(res.get(i-1).get(j-1)+res.get(i-1).get(j));
}
}
res.add(row);
}
return res;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.print(generate(5));
}
}