Pascal's Triangle II
来源:互联网 发布:上海师范大学网络教育 编辑:程序博客网 时间:2024/05/17 08:36
Given an index k, return the kth row of the Pascal's triangle.
For example, given k = 3,
Return [1,3,3,1]
.
Note:
Could you optimize your algorithm to use only O(k) extra space?
思路:这个题目跟Pascal's Triangle差不多,差别在于Pascal's Triangle是用上一行的数据来生成下一行的数据。
这里只有一行。如果模仿Pasacal 肯定不行,因为之前使用 list(j) + list(j+1)来生成。这里list.add(1)会将list(j+1)数据改变掉。
办法就是反着加。
list(j)+list(j-1) , 然后 后面再加1.
for example:
1
11
1 2 + 1 -> 1 2 1
1 3 3 +1 -> 1 3 3 1
1 4 6 4 +1 - > 1 4 6 4 1
public class Solution { public List<Integer> getRow(int rowIndex) { List<Integer> prelist = new ArrayList<Integer>(); if(rowIndex<0) return prelist; prelist.add(1); if(rowIndex == 0) return prelist; for(int i=1; i<=rowIndex; i++){ List<Integer> curlist = new ArrayList<Integer>(); curlist.add(1); for(int j=prelist.size()-1; j>0; j--){ curlist.add(prelist.get(j) + prelist.get(j-1)); } curlist.add(1); prelist = curlist; } return prelist; }}
0 0
- Pascal's Triangle、Pascal's Triangle II
- Pascal's Triangle , Pascal's Triangle II
- Pascal's Triangle & Pascal's Triangle II
- Pascal's Triangle && Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- Pascal's Triangle II
- java enum的使用
- pc-lint使用
- android webview js alert对话框 不能弹出 解决办法
- AIX用裸设备给表空间添加数据文件
- Collections.unmodifiableList方法的使用与场景
- Pascal's Triangle II
- The Python Tutorial 5——Data Structures
- 抢占式内核与非抢占式内核
- getDataFromTimeSeires
- 小米手机AlarmManager失效的问题
- IOS开发---C语言-⑪指针
- [挑战程序设计竞赛] POJ 3699 - Meteor Shower
- java 继承 覆写 动态数组内存分配
- Linux 修改Ip