Interview Question: Find all substrings (Google)
by rgthree
HTML
<strong>“Find all (English word) substrings of a given string (every = every, ever, very).”</strong><br>
<em>– Google Software Engineer Interview</em>
<br><br>
<a href="http://www.forbes.com/sites/jacquelynsmith/2011/03/07/tech-job-interview-questions/" target="_blank">forbes.com</a>
<br><br>
Input: "every"<br>
Run: <input id="output" style="width:250px;"/><br>
JavaScript
var isValidWord = function(w){
return /^(every|ever|very|eve)$/.test(w);
}
var findValidWords = function(word){
var words, w;
words = [];
w = word;
do{
if(isValidWord(w))
words.push(w);
}while(w = w.substr(0, w.length-1));
if(word.length > 1)
words = words.concat(findValidWords(word.substr(1)));
return words;
}
var validwords = findValidWords('every');
document.getElementById('output').value = validwords;
console.log(validwords);