Permutations of a string
by Hari Menon
HTML
<pre id="output"></pre>
JavaScript
function getPermutations(str) {
var len = str.length;
var result = [];
// Base Case
if (len === 0) {
result.push('');
return result;
}
for (var i = 0; i < len; i++) {
var before = str.substring(0, i);
var after = str.substring(i + 1, len);
var partials = getPermutations(before + after);
for (var j = 0; j < partials.length; j++) {
result.push(str.charAt(i) + partials[j]);
}
}
return result;
}
document.querySelector('#output').innerHTML = getPermutations('abcdefgh').join('\n');