A more complex data structure in computer science is the graph. Each node can point to many other nodes in the structure. If the edges of the graph only go in one direction, it is called a directed graph.
Next let me mention arrays. Specifically I want to tell you about dynamic arrays. These are arrays that can change size at run time. They are usually implemented with static arrays.
Recusion is an elegant solution for many problems. However the function call overhead means the recusive solution is often expensive. Iterative methods can use the stack to do recusive style solutions. In general you should try to find a correct solution to a problem first. Then you can come back and make it fast.
Next time I plan to wrap up my hints on interview techniques. I will cover drawing, SQL, brainteasers, and your resume. Then we can get back to discussing software maintenance in general.
A Little Bit of Crypto - I have been trying to figure out to "collision resistant" some of these standard hash functions are. It is a tough concept to get my head around. I figure...