LeetCode#118. Pascal's Triangle LeetCode#119. Pascal's Triangle II
来源:互联网 发布:java demo是什么 编辑:程序博客网 时间:2024/06/04 00:41
- 题目:给定一个整数n,输出n行杨辉三角形的结果
- 难度:Easy
- 思路:知道杨辉三角的形成规律,就可以通过两层for循环得到
- 代码:
public class Solution { public List<List<Integer>> generate(int numRows) { List<List<Integer>> result = new ArrayList<>(); if(numRows <= 0){ return result; } List<Integer> li = new ArrayList<>(); li.add(1); result.add(li); for(int i = 1; i < numRows; i++){ List<Integer> tmp = new ArrayList<>(); tmp.add(1); List<Integer> list = result.get(i-1); for(int j = 1; j < i; j++){ tmp.add(list.get(j-1)+list.get(j)); } tmp.add(1); result.add(new ArrayList<>(tmp)); } return result; }}
利用ArrayList的一些常用方法,代码简洁很多
java.util.ArrayList.add(int index, E elemen) 方法将指定的元素E在此列表中的指定位置。它改变了目前元素在该位置(如果有的话)和所有后续元素向右移动(将添加一个到其索引)。
public class Solution { public List<List<Integer>> generate(int numRows) { List<List<Integer>> allrows = new ArrayList<List<Integer>>(); ArrayList<Integer> row = new ArrayList<Integer>(); for(int i=0;i<numRows;i++) { row.add(0, 1); System.out.println(row.toString()); for(int j=1;j<row.size()-1;j++) row.set(j, row.get(j)+row.get(j+1)); allrows.add(new ArrayList<Integer>(row)); } return allrows; }}
- 题目:输入一个int值rowIndex,返回杨辉三角形的第rowIndex行元素(rowIndex从0开始计数)
- 难度:Easy
- 思路:由于有了上一题的方法,直接循环rowIndex+1次,每次更新list的元素
- 代码:
public class Solution { public List<Integer> getRow(int rowIndex) { List<Integer> result = new ArrayList<>(); if(rowIndex < 0){ return result; } for(int i = 0; i < rowIndex+1; i++){ result.add(0,1); for(int j = 1; j < result.size()-1; j++){ result.set(j, result.get(j) + result.get(j+1)); } } return result; }}
阅读全文
0 0
- [LeetCode]118. Pascal's Triangle&119. Pascal's Triangle II
- LeetCode Pascal's Triangle II
- LeetCode: Pascal's Triangle II
- [LeetCode] Pascal's Triangle II
- [Leetcode] Pascal's Triangle II
- 【leetcode】Pascal's Triangle II
- LeetCode - Pascal's Triangle II
- Leetcode: Pascal's Triangle II
- LeetCode-Pascal's Triangle II
- [leetcode] Pascal's Triangle II
- LeetCode - Pascal's Triangle II
- LeetCode | Pascal's Triangle II
- Pascal's Triangle II -leetcode
- Leetcode Pascal's Triangle II
- [LeetCode] Pascal's Triangle II
- Leetcode: Pascal's Triangle II
- Leetcode Pascal's Triangle II
- LeetCode Pascal's Triangle II
- sqlserver脱机导入导出数据库及数据
- CSS书写规范
- 快速失败机制
- kotlin基本语法(二)
- Python 语法知识 --函数,闭包
- LeetCode#118. Pascal's Triangle LeetCode#119. Pascal's Triangle II
- 浅析Java中的数据类型
- 推荐系统案例分析-->event_recommendation_competition
- Ubuntu下vim配色方案
- java根据ip地址从第三方接口获取详细的地理位置地域信息
- 浏览器兼容
- JS实现隔行换色
- 做SEO优化几个容易忽视的细节 做好了 牛逼了
- java简易记事本开发