LeetCode 118 Pascal's Triangle
2014-08-06 22:40
381 查看
题目
Given numRows, generate the first numRows of Pascal's triangle.
For example, given numRows = 5,
Return
思路
1 可以看到每层都与上面一层有关系,所以用迭代就可以完成
2 难点在于每层的第一个和最后一个为1的怎么处理。可以直接在循环中加判断,这是最方便的。
代码
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] ]
思路
1 可以看到每层都与上面一层有关系,所以用迭代就可以完成
2 难点在于每层的第一个和最后一个为1的怎么处理。可以直接在循环中加判断,这是最方便的。
代码
public class Solution { public ArrayList<ArrayList<Integer>> generate(int numRows) { ArrayList<ArrayList<Integer>> ans = new ArrayList<ArrayList<Integer>>(); if(numRows==0){ return ans; } ArrayList<Integer> pre = new ArrayList(); pre.add(1); ans.add(new ArrayList<Integer>(pre)); for(int currow=2;currow<=numRows;currow++){ ArrayList<Integer> temp = new ArrayList<Integer>(); for(int i=0;i<currow;i++){ if(i==0||i==currow-1){ temp.add(1); } else{ temp.add(pre.get(i-1)+pre.get(i)); } } pre = temp; ans.add(new ArrayList<Integer>(temp)); } return ans; } }
相关文章推荐
- leetcode——118—— Pascal's Triangle
- LeetCode 118: Pascal's Triangle
- [leetcode]: 118. Pascal's Triangle
- 【leetcode】【118】Pascal's Triangle
- leetcode 118 —— Pascal's Triangle
- leetcode(33).118. Pascal's Triangle
- leetcode 118: Pascal's Triangle
- LeetCode 118 :Pascal's Triangle
- LeetCode: Pascal's Triangle [118]
- [leetCode]118_Pascal's Triangle
- LeetCode---(118)Pascal's Triangle
- leetcode 118 Pascal's Triangle(array)
- LeetCode 118 Pascal's Triangle
- LeetCode 118: Pascal's Triangle
- [LeetCode] 118. Pascal's Triangle
- Leetcode刷题记—— 118. Pascal's Triangle(杨辉三角形)
- [leetCode 118 & 119] Pascal's Triangle I && II (杨辉三角问题)
- [leetcode-118]Pascal's Triangle(c++)
- leetcode 118 Pascal's Triangle(难易度:Easy)
- LeetCode 118 Pascal's Triangle(帕斯卡三角形)(vector)