53 lines
1.3 KiB
Java
53 lines
1.3 KiB
Java
//给定一个非负索引 k,其中 k ≤ 33,返回杨辉三角的第 k 行。
|
||
//
|
||
//
|
||
//
|
||
// 在杨辉三角中,每个数是它左上方和右上方的数的和。
|
||
//
|
||
// 示例:
|
||
//
|
||
// 输入: 3
|
||
//输出: [1,3,3,1]
|
||
//
|
||
//
|
||
// 进阶:
|
||
//
|
||
// 你可以优化你的算法到 O(k) 空间复杂度吗?
|
||
// Related Topics 数组
|
||
// 👍 281 👎 0
|
||
|
||
package leetcode.editor.cn;
|
||
|
||
import java.util.ArrayList;
|
||
import java.util.List;
|
||
|
||
//119:杨辉三角 II
|
||
public class PascalsTriangleIi {
|
||
public static void main(String[] args) {
|
||
//测试代码
|
||
Solution solution = new PascalsTriangleIi().new Solution();
|
||
solution.getRow(3);
|
||
}
|
||
|
||
//力扣代码
|
||
//leetcode submit region begin(Prohibit modification and deletion)
|
||
class Solution {
|
||
public List<Integer> getRow(int rowIndex) {
|
||
List<Integer> list = new ArrayList<>();
|
||
list.add(1);
|
||
int left = list.get(0);
|
||
for (int i = 1; i <= rowIndex; i++) {
|
||
for (int j = 1; j < list.size(); j++) {
|
||
int temp = list.get(j);
|
||
list.add(j, left + list.get(j));
|
||
list.remove(j+1);
|
||
left = temp;
|
||
}
|
||
list.add(1);
|
||
}
|
||
return list;
|
||
}
|
||
}
|
||
//leetcode submit region end(Prohibit modification and deletion)
|
||
|
||
} |