javascript之數組的全部排列組合


javascript代碼如下:

 1         var arr = [1, 2, 3];
 2         // 臨時變量,用於輸出
 3         var temp = [];
 4         function n(arr) {
 5             for (var i = 0; i < arr.length; i++) {
 6                 // 插入第i個值
 7                 temp.push(arr[i]);
 8                 // 復制數組
 9                 var copy = arr.slice();
10                 // 刪除復制數組中的第i個值,用於遞歸
11                 copy.splice(i, 1);
12                 if(copy.length == 0) {
13                     // 如果復制數組長度為0了,則打印變量
14                     console.log(temp);
15                 }else {
16                     // 否則進行遞歸
17                     n(copy);
18                 }
19                 // 遞歸完了之后刪除最后一個元素,保證下一次插入的時候沒有上一次的元素
20                 temp.pop();
21             }
22         }
23         n(arr);

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM