118. Pascal's Triangle
来源:互联网 发布:c语言《》 编辑:程序博客网 时间:2024/05/17 04:42
Given numRows, generate the first numRowsof Pascal's triangle.
For example, given numRows = 5,
Return
[
[1],
[1,1],
[1,2,1],
[1,3,3,1],
[1,4,6,4,1]
]
分析:题目意思就是打印一个杨辉三角。但是不是用的数组,使用集合来存储。题目不难有两种解法:
方法一、就类似用队列解决一样,不过要提醒的是,当向ArrayList集合中同一个位置添加值时,不会替换,因此ss.set(j, ss.get(j)+ss.get(j+1));
方法二:就是跟利用数组一样a[n][n]=a[n-1][n]+a[n-1][n];
具体代码如下:
public class Solution {
public List<List<Integer>> generate(int numRows) {
List<List<Integer>> ls=new ArrayList();
/* List<Integer> ss = newArrayList<Integer>();
for(inti=0;i<numRows;i++)
{
ss.add(0,1);
for(intj=1;j<ss.size()-1;j++)
ss.set(j,ss.get(j)+ss.get(j+1));
ls.add(newArrayList<Integer>(ss));
}*/
for(inti=0;i<numRows;i++)
{
ArrayList<Integer>lss = new ArrayList<Integer>();
for(intj=0;j<=i;j++){
if(j==0||j==i){
lss.add(1);
}else{
lss.add(ls.get(i-1).get(j)+ls.get(i-1).get(j-1));
}
}
ls.add(lss);
}
return ls;
}
}
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118.Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 118. Pascal's Triangle
- 为什么你的程序不是从上往下执行的
- 上传文件 553 Could not create file. 解决
- bitmap回收问题
- Openjudge 7624 山区建小学
- 算法之路(三)——BFS
- 118. Pascal's Triangle
- The requested resource is not available.http404
- Linux信号量(进程)
- java设计模之OO原则小结
- Unity Editor 基础篇(五):Gizmos
- Animation和Animator的简单区别
- Linux下的软件的几种分类
- java基本知识-面试题简答
- 51nod独木舟问题