internship
Example stressful question
Given 2 words (in the dictionary), transform one word into other by changing only one letter at a time. Each intermediate word must also be a valid word.
Q1: Given the least number of transformations needed.
Q2: Show the intermediate words of a valid path.
Common mistake
1. Immediately jump into coding
- We have no idea if you are going down a dead end or not
- We may not be able to offer advice or hints if you get stuck early on
- You will waste time if you decide to start over and take a new approach
- Pontentially unfinished/incorrect code is all we have to evaluate
2. Not running through an example
- Do pick a simple example
- Do think about a n edge case or two
- Do be clear with your example input(overly specific > vague)
- Don't waste too much time running through many examples
3. Not writting real code
However, pseudocode is ok to help formulate and communicate your initial solution
Do use "helper" funcition after discussing with your interviewer(think unimplemented functions, not pseudocode)
DON'T mix real code & pseudocode
4. Force-fitting solution to a similar but different problem
Do draw from experience and practice problems.
Don't assume we are asking you to regurgitate a known solution you saw in class, etc(i.e. problem may not have a solution that requires user of a named-algorithm)
5. Getting stuck on optimization before any coding
Do think critically about the algorithmic complexity of your solution, but
Don't assume brute-force is unacceptable
Do explain why you think it is or isn't possible to improve complexity
Do analyze and be able to explain algorithmic comlexity of own code