示例1给定一个非负索引 rowIndex,返回「杨辉三角」的第 rowIndex 行。
在「杨辉三角」中,每个数是它左上方和右上方的数的和。
输入: rowIndex = 3 输出: [1,3,3,1]示例2
输入: rowIndex = 0 输出: [1]示例3
输入: rowIndex = 1 输出: [1,1]提示
- 0 <= rowIndex <= 33
代码Java你可以优化你的算法到 *O*(*rowIndex*) 空间复杂度吗
// 未实现进阶 public ListgetRow(int rowIndex) { rowIndex++; List list = new ArrayList<>(); int pre = 1; for (int i = 0; i < rowIndex; i++) { for (int j = 0; j < i+1; j++) { if (j == 0 || j == i) { if (list.size() > j) list.remove(j); list.add(j, 1); } else { int x = pre + list.get(j); pre = list.get(j); if (list.size() > j) list.remove(j); list.add(j, x); } } } return list; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)