全排列
注意:
1. 字符串参数中的字符无重复且仅包含小写字母
2. 返回的排列组合数组不区分顺序
const permute = string => {
const res = [];
function search(str) {
str.length === string.length && res.push(str);
for (let char of string) {
str.indexOf(char) < 0 && search(str + char);
}
}
return search('') || res;
}
示例
输入:_permute(‘abc’)
输出:[‘abc’,‘acb’,‘bac’,‘bca’,‘cab’,‘cba’]