diff --git a/leetcode/pom.xml b/leetcode/pom.xml new file mode 100644 index 0000000..5ee901e --- /dev/null +++ b/leetcode/pom.xml @@ -0,0 +1,20 @@ + + + + JavaBasiceDemo + com.wyl.example + 1.0-SNAPSHOT + + 4.0.0 + + com.wyl + leetcode + + + 11 + 11 + + + \ No newline at end of file diff --git a/leetcode/src/main/java/com/wyl/leetcode/YangHuiTriangle.java b/leetcode/src/main/java/com/wyl/leetcode/YangHuiTriangle.java new file mode 100644 index 0000000..4cea8a4 --- /dev/null +++ b/leetcode/src/main/java/com/wyl/leetcode/YangHuiTriangle.java @@ -0,0 +1,45 @@ +package com.wyl.leetcode; + +import java.util.ArrayList; +import java.util.List; + +public class YangHuiTriangle { + /** + * 118.给定一个非负整数 numRows,生成「杨辉三角」的前 numRows 行。 + * 在「杨辉三角」中,每个数是它左上方和右上方的数的和。 + *

+ * 示例 1: + *

+ * 输入: numRows = 5 + * 输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]] + * 示例 2: + * 输入: numRows = 1 + * 输出: [[1]] + *

+ * 提示: + *

+ * 1 <= numRows <= 30 + */ + public static List> generate(int numRows) { + int[][] res = new int[numRows][numRows]; + List> resList = new ArrayList<>(); + for (int i = 0; i < numRows; i++) { + List row = new ArrayList<>(); + for (int j = 0; j < i + 1; j++) { + if (i == 0 || j == 0 || i == j) { + res[i][j] = 1; + row.add(1); + } else { + res[i][j] = res[i - 1][j - 1] + res[i - 1][j]; + row.add(res[i][j]); + } + } + resList.add(row); + } + return resList; + } + + public static void main(String[] args) { + System.out.println(25 >> 3); + } +} \ No newline at end of file diff --git a/pom.xml b/pom.xml index 5cbb6fd..a5b1cdf 100644 --- a/pom.xml +++ b/pom.xml @@ -25,6 +25,7 @@ cache jnr jni + leetcode pom