千家信息网

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

发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,这篇文章主要为大家展示了"JS如何实现数组全排列输出算法",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"JS如何实现数组全排列输出算法"这篇文章吧。示例代码
千家信息网最后更新 2025年12月02日JS如何实现数组全排列输出算法

这篇文章主要为大家展示了"JS如何实现数组全排列输出算法",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"JS如何实现数组全排列输出算法"这篇文章吧。

示例代码如下:

function permute(input) {  var permArr = [],  usedChars = [];  function main(input){    var i, ch;    for (i = 0; i < input.length; i++) {      ch = input.splice(i, 1)[0];      usedChars.push(ch);      if (input.length == 0) {        permArr.push(usedChars.slice());      }      main(input);      input.splice(i, 0, ch);      usedChars.pop();    }    return permArr  }  return main(input);};console.log(permute([5, 3, 7, 1]));

另外一种是根据字符串 来排序

function permutate(str) {     var result=[];    if(str.length==1){        return [str]        }else{                 var preResult=permutate(str.slice(1));            for (var j = 0; j < preResult.length; j++) {                for (var k = 0; k < preResult[j].length+1; k++) {                    var temp=preResult[j].slice(0,k)+str[0]+preResult[j].slice(k);                                  result.push(temp);                              }            }        return result;     }  } console.log(permutate("abc"));

以上是"JS如何实现数组全排列输出算法"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0