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));
    }
}