permutation in js

by Samar Pattanayak

JavaScript

function permutationC() {
  var num = "sama".split("");
  num = num.slice(); // make a copy
  var stack = [];
  var permutation = []

  function inner() {
    if (num.length == 0) {
      permutation.push(stack.slice());
    }
    for (var i = 0; i < num.length; i++) {
      //console.log(i)
      var first = num.splice(i, 1);
      stack.push(first);
      inner();
      stack.pop();
      num.splice(i, 0, first);
    }
  }
  console.log(permutation)
  inner();
  return permutation;
}

var res=permutationC()
for (var i = 0; i < res.length; i++) {
    res[i] = res[i].join('');
}
console.log(res)