本文实例讲述了JS实现的全排列组合算法。分享给大家供大家参考,具体如下:
全排列组合算法,例如a, b, c, d进行全排列组合,则组合结果为:a、b、ab, c, ac,公元前,abc, d,广告,bd, abd, cd, acd、bcd, abcd。实现思路:从数据源拿出一个元素,依次与已存在的组合数据进行组合,循环上面操作直到数据源没有数据为止。
<>强例子:强>
数据源a, b, c
1。拿出一组合数据组为空,插入数据源一元素到组合数据,此时组=[一]
2.拿出b组合数据集团拿出a, a和b组合,得到ab,把数据源b元素,ab插入组合数据,此时组=(a、b、ab)
3。拿出c组合数据集团拿出a、b、ab,分别与c组合,分别得到ac,公元前,abc,把数据源c元素,ac,公元前abc插入组合数据,此时组=(a、b、ab、c、ac,公元前,abc)
<强> js代码:强>
var data=https://www.yisu.com/zixun/[a, b, c, d '); 函数getGroup(数据、指数=0=[]){ var need_apply=new Array (); need_apply.push(数据(指标)); (var=0;我& lt;group.length;我+ +){ need_apply。推动(集团[我]+数据(指标)); } group.push。应用(集团、need_apply); 如果(指数+ 1祝辞=data.length)返回组; 否则返回getGroup(数据、索引+ 1组); } console.log (getGroup(数据)); >之前运行输出结果:
更多关于JavaScript相关内容感兴趣的读者可查看本站专题:《JavaScript数据结构与算法技巧总结》,《JavaScript数学运算用法总结》,《JavaScript排序算法总结》,《JavaScript遍历算法与技巧总结》,《JavaScript查找算法技巧总结》及《JavaScript错误与调试技巧总结》
希望本文所述对大家JavaScript程序设计有所帮助。
JS实现的全排列组合算法示例