diff --git a/snippets/stringPermutations.md b/snippets/stringPermutations.md index 6345b517a..30c477d71 100644 --- a/snippets/stringPermutations.md +++ b/snippets/stringPermutations.md @@ -3,10 +3,10 @@ title: stringPermutations tags: string,recursion,advanced --- -⚠️ **WARNING**: This function's execution time increases exponentially with each character. Anything more than 8 to 10 characters will cause your browser to hang as it tries to solve all the different combinations. - Generates all permutations of a string (contains duplicates). +⚠️ **WARNING**: This function's execution time increases exponentially with each character. Anything more than 8 to 10 characters will cause your browser to hang as it tries to solve all the different combinations. + Use recursion. For each letter in the given string, create all the partial permutations for the rest of its letters. Use `Array.prototype.map()` to combine the letter with each partial permutation, then `Array.prototype.reduce()` to combine all permutations in one array. @@ -27,4 +27,4 @@ const stringPermutations = str => { ```js stringPermutations('abc'); // ['abc','acb','bac','bca','cab','cba'] -``` \ No newline at end of file +```