Pascal's Triangle II

Total Accepted: 19384 Total Submissions: 63446 My Submissions Question Solution
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?

解:
题目里要求O(k),与上一题 杨辉三角 类似,但是我们稍微改一下,只需要存上一行的结果就行了。
这样就不需要消耗太多内存。

更厉害的是:Inplace也可以,只要你每次从后往前扫描就行了。一个array也能搞定:

 public class Solution {
public List<Integer> getRow(int rowIndex) {
List<Integer> ret = new ArrayList<Integer>(); for (int i = 0; i <= rowIndex; i++) {
for (int j = i; j >= 0; j--) {
if (j == i) {
ret.add(1);
} else if (j != 0) {
// ERROR: use add instead of set
//ret.add(ret.get(j) + ret.get(j - 1));
ret.set(j, ret.get(j) + ret.get(j - 1));
}
}
} return ret;
}
}

GitHub代码链接

最新文章

  1. mui消息框alert,confirm,prompt,toast
  2. C# 从excel里面复制的1万6千多条记录粘贴到FCKeditor里面,点保存的时候,保存不了,页面没有反应
  3. 使用Jquery+EasyUI 进行框架项目开发案例讲解之四 组织机构管理源码分享
  4. 注意页面上的时间戳可能会成为bd快照的时间_快照不更新的原因
  5. validate插件的使用
  6. demo_03HTML5中的动画效果
  7. (转载)MySQL BETWEEN 用法
  8. web.xml中servlet, bean, filter, listenr 加载顺序汇总
  9. 【Java学习笔记之三十】详解Java单例(Singleton)模式
  10. 使用Identity Server 4建立Authorization Server (1)
  11. 201771010126王燕《面向对象程序设计(Java)》第三周学习总结
  12. IIS部署Angular2
  13. d3.js 平移缩放
  14. JavaScript的基本包装类型概述与基本包装类型_Number类型
  15. linux c使用socket进行http 通信,并接收任意大小的http响应(四)
  16. linux之目录知识
  17. STM8
  18. strpos 的正确使用方式
  19. SQL SERVER锁(LOCK)知识及锁应用
  20. postman 官方 test 脚本样例

热门文章

  1. HDU Bomb Game 3622 (2-Sat)
  2. 【Android】Android如何对APK反编译
  3. Idea集成Lombok代码注释来精简代码
  4. Docker Dockerfile简述
  5. java 和 C++ Socket通信(java作为服务端server,C++作为客户端client,解决中文乱码问题GBK和UTF8)
  6. 在C语言中除法运算为什么没有小数部分?
  7. [转]SpringMVC中使用Interceptor拦截器
  8. 跨系统-跨数据库访问表或创建映射视图-PB访问数据库的特殊处理
  9. mysql数据库1129错误
  10. MySQL存储过程相互调用