JS的全排列

JS的全排列

function permutate(str) {
    var result = [];
    if(str.length > 1) {
        var left = str[0];
        var rest = str.slice(1, str.length);
        var preResult = permutate(rest);
        for(var i=0; i<preResult.length; i++) {
            for(var j=0; j<preResult[i].length; j++) {
                var tmp = preResult[i].slice(0, j) 
                        + left 
                        + preResult[i].slice(j, preResult[i].length);
                result.push(tmp);
            }
        }
    } 
    else if (str.length == 1) {
        return [str];
    }
    return result;
}
算法 文章被收录于专栏

JavaScript算法

全部评论

相关推荐

点赞 评论 收藏
分享
牛客263158796号:我领羊一面后十天不挂也不推进 今天问hr说等前序的第一批意向发完看情况再看是否推进
点赞 评论 收藏
分享
11-08 17:36
诺瓦科技_HR
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务