首页 > 语言 > JavaScript > 正文

JS实现的数组全排列输出算法

2024-05-06 16:17:18
字体:
来源:转载
供稿:网友

这篇文章主要介绍了JS实现的数组全排列输出算法,实例分析了全排列的原理与相关的javascript实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了JS实现的数组全排列输出算法。分享给大家供大家参考。具体分析如下:

这段js代码对数组进行全排列输出,改进了一些老的代码

从n个不同元素中任取m(m≤n)个元素,按照一定的顺序排列起来,叫做从n个不同元素中取出m个元素的一个排列。当m=n时所有的排列情况叫全排列。

 

 
  1. function permute(input) { 
  2. var permArr = [], 
  3. usedChars = []; 
  4. function main(input){ 
  5. var i, ch; 
  6. for (i = 0; i < input.length; i++) { 
  7. ch = input.splice(i, 1)[0]; 
  8. usedChars.push(ch); 
  9. if (input.length == 0) { 
  10. permArr.push(usedChars.slice()); 
  11. main(input); 
  12. input.splice(i, 0, ch); 
  13. usedChars.pop(); 
  14. return permArr 
  15. return main(input); 
  16. }; 
  17. console.log(permute([5, 3, 7, 1])); 

希望本文所述对大家的javascript程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选