您的位置:首页 > 其它

LeetCode Pascal's Triangle II

2015-10-01 16:22 375 查看
题目:

Given an index k, return the kth row of the Pascal's triangle.

For example, given k = 3,

Return 
[1,3,3,1]
.
题意:
就是给定一个K值,然后计算出第K行的杨辉三角。注意的是,这里的虽说是第K列,但是其实计数的时候是从0开始计数,这与前一篇博客中的那一题不同,那题是从第1行开始计数的。所以需要转化下,思路还是一样,一行一行来得到内容,只是最后输出的时候只需要输出第K列即可。相关的两题之间的联系可以参看前一篇博客。

public class Solution
{
public List<Integer> getRow(int rowIndex)
{
List<List<Integer>> list = new ArrayList<List<Integer>>();
List<Integer> li = new ArrayList<Integer>();
if(rowIndex == 0)
{
li.add(1);
list.add(li);
return li;
}
else
{
List<Integer> first = new ArrayList<Integer>();
first.add(1);
list.add(first);
for(int i = 1; i <= rowIndex; i++)
{
List<Integer> currentRow = new ArrayList<Integer>();
currentRow.add(1);
for(int j = 1; j <= (i - 1); j++)
{
List<Integer> previousRow = list.get(i - 1);
currentRow.add(previousRow.get(j - 1) + previousRow.get(j));
}
currentRow.add(1);
list.add(currentRow);
}
return list.get(rowIndex);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: