File tree Expand file tree Collapse file tree 2 files changed +48
-0
lines changed
Expand file tree Collapse file tree 2 files changed +48
-0
lines changed Original file line number Diff line number Diff line change 1+ /**
2+ * @param {number } n
3+ * @param {number } k
4+ * @return {number[][] }
5+ */
6+ var combine = function ( n , k ) {
7+ const bkArr = [ ]
8+ const ans = [ ]
9+
10+ const bk = ( nk , start ) => {
11+ if ( nk === k ) {
12+ ans . push ( [ ...bkArr ] )
13+ return
14+ }
15+ for ( let i = start ; i <= n ; i ++ ) {
16+ bkArr [ nk ] = i
17+ bk ( nk + 1 , i + 1 )
18+ }
19+ }
20+
21+ bk ( 0 , 1 )
22+ return ans
23+ } ;
Original file line number Diff line number Diff line change 1+ /**
2+ * @param {number[] } nums
3+ * @return {number[][] }
4+ */
5+ var permute = function ( nums ) {
6+ const bkArr = [ ]
7+ const ans = [ ]
8+ const visit = Array . from ( { length : nums . length } ) . fill ( false )
9+ const bk = ( nk ) => {
10+ if ( nk === nums . length ) {
11+ ans . push ( [ ...bkArr ] )
12+ return
13+ }
14+ for ( let i = 0 ; i < nums . length ; i ++ ) {
15+ if ( visit [ i ] === false ) {
16+ visit [ i ] = true ;
17+ bkArr [ nk ] = nums [ i ]
18+ bk ( nk + 1 )
19+ visit [ i ] = false
20+ }
21+ }
22+ }
23+ bk ( 0 )
24+ return ans
25+ } ;
You can’t perform that action at this time.
0 commit comments