js 实现排列组合的打印,

 1 var results = [], result = [];
 2 
 3 function doExchange(arr, index) {
 4 
 5   for (var i = 0; i < arr[index].length; i++) {
 6     // 填充第一项
 7     result[index] = arr[index][i];
 8     // 判断条件
 9     if (index != arr.length - 1) {
10       // 递归
11       doExchange(arr, index + 1)
12     } else {
13       // 结束的时候
14       results.push(result.join('-'))
15     }
16   }
17 }
18 
19 var arr = [[1, 2], [3, 4]];
20 doExchange(arr, 0) //
21 console.log(results)  // output: 1-3,1-4,2-3,2-4

 交换递归的思想,多写几遍就知道,书读百本其义自见,不明白敲上100遍就懂了

猜你喜欢

转载自www.cnblogs.com/ajaxkong/p/12002113.html
今日推荐