Dictionary Search

by rakhi5b4

JavaScript

var charMap = {
   '2' : 'A,B,C',
   '3' : 'D,E,F',
   '4' : 'G,H,I',
   '5' : 'J,K,L',
   '6' : 'M,N,O',
   '7' : 'P,Q,R,S',
   '8' : 'T,U,V',
   '9' : 'W,X,Y,Z'
};

function createWords(str, numArr, totalLength) {
  if(str.length == totalLength) {
     console.log(str);
  } else {
     var possibilities = charMap[numArr[0]];
     var possArr = possibilities.split(',');
     for(let i=0;i<possArr.length;i++) {
      createWords(str+possArr[i], numArr.slice(1, numArr.length), totalLength);  
     }
  } 
}

function printAllWords(numStr) {
	createWords('', numStr.split(''), numStr.length);
}

printAllWords('228');