LeetCode Pascal's Triangle

原创 2015年07月07日 14:14:54

Description:

Given numRows, generate the first numRows of Pascal's triangle.

For example, given numRows = 5,
Return

[
     [1],
    [1,1],
   [1,2,1],
  [1,3,3,1],
 [1,4,6,4,1]
]

Solution:

杨辉三角。

import java.util.*;

public class Solution {
	public List<List<Integer>> generate(int numRows) {
		List<List<Integer>> list = new ArrayList<List<Integer>>();
		if (numRows == 0)
			return list;
		LinkedList<Integer> array = new LinkedList<Integer>();
		LinkedList<Integer> neoArray = new LinkedList<Integer>();

		array.add(1);
		list.add(new ArrayList<Integer>(array));
		if (numRows == 1)
			return list;

		array.add(1);
		list.add(new ArrayList<Integer>(array));
		if (numRows == 2)
			return list;

		int pre, cur;

		for (int i = 3; i <= numRows; i++) {
			Iterator<Integer> ite = array.iterator();
			pre = 1;
			neoArray = new LinkedList<Integer>();
			neoArray.add(1);
			ite.next();
			while (ite.hasNext()) {
				cur = ite.next();
				neoArray.add(cur + pre);
				pre = cur;
			}
			neoArray.add(1);
			list.add(new ArrayList<Integer>(neoArray));
			array = neoArray;
		}
		return list;
	}
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

LeetCode 119. Pascal's Triangle II

题目: Given an index k, return the kth row of the Pascal’s triangle.For example, given k = 3, Return...

【leetcode】Pascal's Triangle[java]

public class Solution { public List> generate(int numRows) { //打印前n行的list //由上一个list产...

leetcode:Pascal's Triangle II

题目地址:

《leetCode》: Pascal's Triangle

题目Given numRows, generate the first numRows of Pascal's triangle.For example, given numRows = 5, Ret...

LeetCode - 118. Pascal's Triangle

这道题目是有关三角形的题目,因此可能会涉及到二维数组的问题,在处理这样的三角形问题的时候,有一个比较好的方法就是将三角形当作半个矩阵来看,这样可以比较方便地理清元素下标之间的关系。比如题目中给出的例子...

LeetCode 118. Pascal's Triangle

题目很简单,输入一个数字n,返回一个n行的杨辉三角。解题思路也很简单,我们知道杨辉三角的第n+1行第m+1列的元素为c(n,m)=n!/[m!(n-m)!]。所以我们写个一个函数可以返回c(n,m),...

【LeetCode】Pascal's Triangle & II 解题报告

杨辉三角,分别求前n行和第n行。 【求杨辉三角前n行】 Given numRows, generate the first numRows of Pascal's triangle. For e...

[leetcode]Pascal's Triangle II (杨辉三角形求输出第k行的值)

Pascal’s Triangle II Given an index k, return the kth row of the Pascal’s triangle.For example, gi...

Leetcode Pascal's Triangle II

下面程序空间效率O(k),使用了两个vector交替使用,因为只利用上一行就能填写下一行了。 因为只利用当前行两个数值的信息覆盖新填写的数列格也是可以的,所以只利用一个vector也是可以的。 Lee...

LeetCode Pascal's Triangle II

Given an index k, return the kth row of the Pascal's triangle. For example, given k = 3, Return [1...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)