Showing posts with label Large Scalable System. Show all posts
Showing posts with label Large Scalable System. Show all posts
Friday, October 12, 2012
Saturday, September 1, 2012
You have a book will billion pages. Each Page P has L lines and each lines has W number of words. Design a search algorithm which gives me best match search results. Best match is when all the words given by user exactly matches.
Labels:Data
Large Scalable System
,
Microsoft Interview
,
Search Engine
Wednesday, August 3, 2011
Design An Algorithm to Exhibit Did You Mean Feature of Google Search Engine
When people search at Google, they often type two words without space. For example, instead of typing "binary tree", someone can type "binarytree". Given an input, what is a good way of finding if it is a combination of two valid words e.g. In Directly You have Add Space between two such or if are using some data structure , whene words would have been inserted , you would have mainted a boolen varible to defined the end of word (eod)
An Exanmple Will be Let's say you have a phrase without any spaces - eg. "thisisawesome". Given a dictionary, how would you add spaces in this string?
Another Good Working Code You Can Refer Avinash Solution
Time Complexity O(K) k is length of input string
An Exanmple Will be Let's say you have a phrase without any spaces - eg. "thisisawesome". Given a dictionary, how would you add spaces in this string?
When people search at Google, they often type two words without space. For example, instead of typing "binary tree", someone can type "binarytree". Given an input, what is a good way of finding if it is a combination of two valid words e.g. In Directly You have Add Space between two such or if are using some data structure , where words would have been inserted , you would have maintained a boolean variable to defined the end of word (eod)
An Example Will be Let's say you have a phrase without any spaces - eg. "thisisawesome". Given a dictionary, how would you add spaces in this string?
An Example Will be Let's say you have a phrase without any spaces - eg. "thisisawesome". Given a dictionary, how would you add spaces in this string?
Trie trie = new Trie();
trie.insert("i");
trie.insert("this");
trie.insert("saw");
trie.insert("is");
trie.insert("a");
trie.insert("some");
trie.insert("awesome");
trie.insert("i");
trie.insert("this");
trie.insert("saw");
trie.insert("is");
trie.insert("a");
trie.insert("some");
trie.insert("awesome");
String inputString = "thisisawesome";
String outputString = "";
int left = 0;
int right = 1;
String outputString = "";
int left = 0;
int right = 1;
while ( right <= inputString.length())
{
{
String str = inputString.substring(left,right);
boolean found = trie.containsKey(str);
if ( found)
{
String str = inputString.substring(left,right);
boolean found = trie.containsKey(str);
if ( found)
{
outputString += str;
outputString += " ";
left += str.length();
right = left + 1;
}
outputString += str;
outputString += " ";
left += str.length();
right = left + 1;
}
else
{
right++;
}
}
}
right++;
}
}
}
Another Good Working Code You Can Refer Avinash Solution
Time Complexity O(K) k is length of input string
Labels:Data
Dynamic Programming
,
Google Interview
,
Large Scalable System
,
Machine Learning
,
Trie
Subscribe to:
Posts
(
Atom
)