Beware of bugs in the above code; I have only proved it correct, not tried it.
I am doing a startup!
Cross-browser testing from your browser!
I have written my fourth book!
Be faster than Larry Wall in the shell!
You're replying to a comment by Frank Riese.
Hmm ... it's pretty discouraging that even after you felt you did well in the interview they did not end up giving you a hire. One thing I certainly saw with my Google interviews is that almost all questions tend to be very open-ended. The theoretically best or fastest solutions to a lot of the questions I had been asked are impossible to code in the space of an interview and sometimes even the subject of a PhD thesis, but finding a correct solution, for example by brute force, is relatively simple. It's usually exactly in that area, where you point out possible improvements, maybe theoretical bounds, and go a little beyond that you can score in Google interviews, IMHO.
For example, take the problem of finding the lowest common ancestor in a tree. It's not too difficult to solve in the space of an interview, but when one reads up on this particular problem a little more, it is amazing to realize that it can be solved in O(1), given a one-time preparation step of O(n) and pointing out how its solution can be related to the range minimum query might be worthwhile, too.
Sometimes, even when you think you have solved a problem perfectly, you might have forgotten to ask a question whose answer might have put a certain slant on the question - such as in inquiring whether an online or offline version of the algorithm is needed. Or you solved the problem exactly as it was intended, but but not confirming certain aspects you left them assumed, instead of making them explicit.
Okay ... I'm rambling on - sorry. What I'm trying to say is that the questions I was asked could not really be solved in the space of an interview. They were so open ended that one could have discussed the problem for hours, so maybe finding that tie-in to open a broader discussion is what was missing.
Then of course there is always the dreaded "cultural fit" ... I am calling it dreaded, because it is such a nebulous term to me that it sometimes seems to be used as a catch-all for any miscellaneous reasons why someone is not getting a hire.
(why do I need your e-mail?)
It would be nice if you left your e-mail address. Sometimes I want to send a private message, or just thank for the great comment. Having your e-mail really helps.
I will never ever spam you.
(Your twitter handle, if you have one.)
* use <pre>...</pre> to insert a plain code snippet.
* use <pre lang="lang">...</pre> to insert a syntax highlighted code snippet.
For example, <pre lang="python">...</pre> will insert Python highlighted code.
* use <code>...</code> to highlight a variable or a single shell command.
* use <a href="url" nospam>title</a> to insert links.
<a href="url" nospam>title</a>
* use other HTML tags, such as, <b>, <i>, <blockquote>, <sup>, <sub> for text formatting.
Type the word "computer_101": (just to make sure you're a human)
Please preview the comment before submitting to make sure it's OK.
Peter Krumins' blog about programming, hacking, software reuse, software ideas, computer security, browserling, google and technology.
Reach me at:
Or meet me on:
Subscribe through an RSS feed:
Subscribe through email:
Enter your email address:
Delivered by FeedBurner
See all top articles
See all downloads
See more detailed list of recent articles
See more detailed category information
See more detailed list of all articles