From 88881d16552970120f763eaf7274d42324a6d56a Mon Sep 17 00:00:00 2001 From: JoannaCode Date: Wed, 9 Mar 2016 19:23:18 -0700 Subject: [PATCH 1/2] Create Pascal_Triangle.java --- Easy/Pascal_Triangle.java | 57 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) create mode 100644 Easy/Pascal_Triangle.java diff --git a/Easy/Pascal_Triangle.java b/Easy/Pascal_Triangle.java new file mode 100644 index 00000000..26e17e19 --- /dev/null +++ b/Easy/Pascal_Triangle.java @@ -0,0 +1,57 @@ +/* + * 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] + ] + + Analysis : + using dp + */ + +import java.util.*; + +public class Pascal_Triangle { + public static List> generate(int numRows) { + + List> res = new ArrayList>(); + ArrayList member = new ArrayList(); + if(numRows <= 0){ + return res; + } + member.add(1); + res.add( member); + return generateArray(res, numRows-1); + } + + public static List> generateArray(List> res, int n){ + if(n == 0){ + return res; + } + else{ + List resLast= new ArrayList(); + ArrayList newMember = new ArrayList(); + resLast = res.get(res.size()-1); + newMember.add(1); + for(int i = 0; i < resLast.size()-1; i++){ + int temp = resLast.get(i) + resLast.get(i+1); + newMember.add(temp); + } + newMember.add(1); + res.add(newMember); + return generateArray(res, n-1); + } + } + public static void main(String[] args) { + // TODO Auto-generated method stub + System.out.print(generate(5)); + } + +} From 2a40d46022cff1e0ec1376662304548b00b0ebf4 Mon Sep 17 00:00:00 2001 From: JoannaCode Date: Wed, 9 Mar 2016 22:03:39 -0700 Subject: [PATCH 2/2] Update Pascal_Triangle.java --- Easy/Pascal_Triangle.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Easy/Pascal_Triangle.java b/Easy/Pascal_Triangle.java index 26e17e19..b0cbcb00 100644 --- a/Easy/Pascal_Triangle.java +++ b/Easy/Pascal_Triangle.java @@ -1,4 +1,4 @@ -/* +/** * Pascal's Triangle * Given numRows, generate the first numRows of Pascal's triangle. For example, given numRows = 5,