Sorry, I couldn't help myself. I actually think you have a valid point.
Sorry, I couldn't help myself. I actually think you have a valid point.
1. Describe the principles of a linked list. What properties does it have that are useful, and in what situations will using one cause a problem?
2. What's the difference between this and a doubly-linked list? What are the benefits and downsides of using the latter?
3. How would you represent a tree in a SQL database? What are the properties of your representation?
(I especially like the last one, because it's totally open-ended. Engineers come up with everything from naïve adjacency lists through to nested intervals and closure tables, and their ability to describe the tradeoffs is a really strong indicator of their programming ability. Of course, it's not a suitable question for all positions.)