介绍
这篇文章主要为大家展示了“JS如何实现数组全排列输出算法”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JS如何实现数组全排列输出算法”这篇文章吧。
示例代码如下:
function 排列(输入),{ var 才能;permArr =, [], 时间=usedChars 才能;[]; function 才能;主要(输入){ ,,,var 我,ch; ,,,for (小姐:=,0;,小姐:& lt;, input.length;,我+ +),{ ,,,,,ch =, input.splice(我,1)[0]; ,,,,,usedChars.push (ch); ,,,,,if (input.length ==, 0), { ,,,,,,,permArr.push (usedChars.slice ()); ,,,,,} ,,,,,主要(输入); ,,,,,input.splice(0,我还以为,ch); ,,,,,usedChars.pop (); ,,,} ,,,return permArr ,,} return 才能;主要(输入); }; console.log(排列([5,,3,,,,1]));
另外一种是根据字符串来排序
function 置换(str), { , ,,,var 结果=[]; ,,,如果(str.length==1) { ,,,,,,,return (str),,,, 还有,,,}{ ,,,, ,,,,,,,,,,,var preResult=置换(str.slice (1)); ,,,,,,,,,,,for (var j =, 0;, j & lt;, preResult.length;, j + +), { ,,,,,,,,,,,,,,,for (var k =, 0;, k & lt;, preResult [j] . length + 1;, k + +), { ,,,,,,,,,,,,,,,,,,,var temp=preResult [j] .slice (0 k) + str [0] + preResult [j] .slice (k),,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,,,,,result.push(临时),,,,,,,,,,,,,,, ,,,,,,,,,,,,,,,} ,,,,,,,,,,,} ,,,,,,,return 结果; , ,,,},, } , console.log(置换(“abc"));
以上是“JS如何实现数组全排列输出算法”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!