Domanda di colloquio di Microsoft

Given a large string (haystack), find a substring (needle) on it.