setset

by Paco86

JavaScript

function getSubSet(str, result=[]){
	if(str.length === 0){
  	return null;
  }else if(str.length === 1){
  	result.push(str)
	  return result;
  }
  
  let last = str.substring(str.length-1);
  let remain = str.substring(0, str.length-1);
  
  let subSet = getSubSet(remain);
  
  subSet.forEach(function(item){
  	result.push(item);
  	result.push(item.concat(last));
  })
  
  result.push(last);
  
  return result;
}

console.log(getSubSet('abc'));