【发布时间】:2017-05-30 02:34:46
【问题描述】:
我需要编写一个 JavaScript 函数来显示作为参数传递的数字的所有数字的所有排列,但不知道该怎么做。
例如,给定 1020,它将产生
1020 , 0120 , 0210 , 0102.
【问题讨论】:
标签: javascript
我需要编写一个 JavaScript 函数来显示作为参数传递的数字的所有数字的所有排列,但不知道该怎么做。
例如,给定 1020,它将产生
1020 , 0120 , 0210 , 0102.
【问题讨论】:
标签: javascript
这是一个可行的解决方案。希望对您有所帮助!
var result = [];
var newArray = [];
function permute(someArray) {
var i, ch;
for (i = 0; i < someArray.length; i++) {
ch = someArray.splice(i, 1)[0];
newArray.push(ch);
if (someArray.length == 0) {
result.push(newArray.slice());
}
permute(someArray);
someArray.splice(i, 0, ch);
newArray.pop();
}
return result;
};
var n = 1901;
var arr = (""+n).split("");
var myResult = permute(arr);
for(var i in myResult){
console.log(myResult[i].join(""));
}
【讨论】: