Given numRows, generate the first numRows of Pascal's triangle. For example, given numRows = 5, the result should be:
[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]Java Solution
public ArrayList<ArrayList<Integer>> generate(int numRows) { ArrayList<ArrayList<Integer>> result = new ArrayList<ArrayList<Integer>>(); if (numRows <= 0) return result; ArrayList<Integer> pre = new ArrayList<Integer>(); pre.add(1); result.add(pre); for (int i = 2; i <= numRows; i++) { ArrayList<Integer> cur = new ArrayList<Integer>(); cur.add(1); //first for (int j = 0; j < pre.size() - 1; j++) { cur.add(pre.get(j) + pre.get(j + 1)); //middle } cur.add(1);//last result.add(cur); pre = cur; } return result;}
自己寫(xiě)的
public class Solution { public List<List<int>> Generate(int numRows) { List<List<int>> ret=new List<List<int>>(); if(numRows==0) { return ret; } List<int> first=new List<int>(); first.Add(1); ret.Add(first); for(int i=2;i<=numRows;i++) { List<int> cur=new List<int>(); cur.Add(1); for(int j=0;j<first.Count-1;j++) { cur.Add(first[j]+first[j+1]); } cur.Add(1); ret.Add(cur); first=cur; } return ret; }}
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)
點(diǎn)擊舉報(bào)。