File tree Expand file tree Collapse file tree 2 files changed +14
-23
lines changed Expand file tree Collapse file tree 2 files changed +14
-23
lines changed Original file line number Diff line number Diff line change 3
3
* @return {number[][] }
4
4
*/
5
5
var generate = function ( numRows ) {
6
- var numCol = [ ] ;
7
- for ( var k = 0 ; k < numRows ; k ++ ) {
8
- numCol . push ( getRow ( k ) ) ;
9
- }
10
- return numCol ;
11
- } ;
12
-
13
- var getRow = function ( rowIndex ) {
14
- var row = [ ] ;
15
- rowLength = parseInt ( rowIndex / 2 ) ;
16
- row . push ( 1 ) ;
17
- for ( var i = 1 ; i <= rowLength ; i ++ ) {
18
- row . push ( row [ i - 1 ] * ( rowIndex - i + 1 ) / i ) ;
19
- }
20
- if ( rowIndex % 2 == 1 ) {
21
- for ( i -- ; i >= 0 ; i -- ) {
22
- row . push ( row [ i ] ) ;
23
- }
24
- } else {
25
- for ( i -= 2 ; i >= 0 ; i -- ) {
26
- row . push ( row [ i ] ) ;
6
+ var numCol = [ ] ,
7
+ temp = [ ] ,
8
+ left ,
9
+ right ;
10
+ for ( var i = 0 ; i < numRows ; i ++ ) {
11
+ left = temp [ 0 ] ;
12
+ for ( var j = 1 ; j < i ; j ++ ) {
13
+ right = temp [ j ] ;
14
+ temp [ j ] = left + right ;
15
+ left = right ;
27
16
}
17
+ temp . push ( 1 ) ;
18
+ numCol . push ( temp . concat ( ) ) ;
28
19
}
29
- return row ;
20
+ return numCol ;
30
21
} ;
Original file line number Diff line number Diff line change 4
4
*/
5
5
var getRow = function ( rowIndex ) {
6
6
var row = [ 1 ] ;
7
- rowLength = rowIndex >> 2 ;
7
+ rowLength = rowIndex >> 1 ;
8
8
for ( var i = 1 ; i <= rowLength ; i ++ ) {
9
9
row . push ( row [ i - 1 ] * ( rowIndex - i + 1 ) / i ) ;
10
10
}
You can’t perform that action at this time.
0 commit comments