[LeetCode][JavaScript]Pascal's Triangle II
2015-09-27 19:45
567 查看
Pascal's Triangle II
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?
https://leetcode.com/problems/pascals-triangle-ii/
要求常数级的空间复杂度。
只维护一行的数据,每次从后往前算(因为每次是当前的值加上前一个的值,从后往前就不会影响结果),最后补上1。
/** * @param {number} rowIndex * @return {number[]} */ var getRow = function(rowIndex) { if(rowIndex === 0){ return [1]; }else if(rowIndex === 1){ return [1, 1]; } var n = rowIndex - 1; var row = [1, 1]; while(n--){ for(var i = row.length - 1; i >= 1; i--){ row[i] = row[i] + row[i - 1]; } row.push(1); } return row; };
相关文章推荐
- [LeetCode][JavaScript]Pascal's Triangle
- JavaScript -- BATweb笔试面试
- 20150927js学习回顾
- JavaScript高级程序设计之面向对象的程序设计之继承之原型链 第6.3.1讲笔记
- JSP的基础语法
- 深入javascript-继承机制
- Javascript--函数技巧
- [LeetCode][JavaScript]House Robber II
- [LeetCode][JavaScript]House Robber
- JavaScript中的值类型和引用类型
- JavaScript高级程序设计之面向对象的程序设计之创建对象之稳妥构造函数模式 第6.2.7讲笔记
- JavaScript高级程序设计之面向对象的程序设计之创建对象之寄生构造函数模式 第6.2.6讲笔记
- Javascript排序问题
- JavaScript高级程序设计之面向对象的程序设计之创建对象之动态原型模式 第6.2.5讲笔记
- 【JavaScript】【学习】一句话概括JavaScript
- JavaScript高级程序设计之面向对象的程序设计之创建对象之组合使用构造函数模式和原型模式 第6.2.4讲笔记
- 函数表达式(JavaScript高程笔记)
- [LeetCode][JavaScript]Spiral Matrix II
- Javascript中的依赖注入
- [LeetCode][JavaScript]Spiral Matrix