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

  介绍

这篇文章主要为大家展示了“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如何实现数组全排列输出算法”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

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