118. Pascal's Triangle【LeetCode】,java,算法,杨辉三角
118. Pascal's Triangle
Given numRows, generate the first numRows of Pascal's triangle.
For example, given numRows = 5,
Return
[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1] ]
public class Solution { public ArrayList<ArrayList<Integer>> generate(int numRows) { ArrayList<ArrayList<Integer>> rst =new ArrayList<ArrayList<Integer>>(); if(numRows==0) return rst; //int i=0; ArrayList<Integer> first =new ArrayList<Integer>(); first.add(0,1); //加入第一行的值 rst.add(first); //循环进行相加 for(int i=1;i<numRows;i++){ ArrayList<Integer> temp =new ArrayList<Integer>(i+1); for(int j=0;j<i+1;j++){ //temp进行初始化 temp.add(-1); } ArrayList<Integer> prev =rst.get(i-1); //将最左和最右的值放置为1 temp.set(0,pre.get(0)); temp.set(i,pre.get(i-1)); for(int j=1;j<i+1;j++){ temp.set(j,prev.get(j-1)+prev.get(j)); } rst.add(temp); } return rst; } }
不积跬步无以至千里,千里之堤毁于蚁穴。
你是点滴积累成就你,你的丝丝懒惰毁掉你。
与诸君共勉