// Usage Example: const result = permutations('abc')
for (let value of result) { console.log(value) }
A Pen by Vlad Bezden on CodePen.
// Usage Example: const result = permutations('abc')
for (let value of result) { console.log(value) }
A Pen by Vlad Bezden on CodePen.
'use strict' | |
function* permutations(data) { | |
if (data.length < 2) { | |
yield* data | |
} | |
for (let [i, x] of[...data].entries()) { | |
let rest = data.slice(0, i) + data.slice(i + 1) | |
for (let j of permutations(rest)) { | |
yield x + j | |
} | |
} | |
} | |
const result = permutations('abc') | |
for (let value of result) { | |
console.log(value) | |
} |