Q: Given an array, tell me if there are any duplicate values in that array. A: Sort the array, start comparing values var array; sort(array); for(i = 0; i < array.length - 1; i++) { if(array[i] == array[i+1]) return true; } Q: Do you know what breadth first search / depth first search is? What is the difference? A: Breadth first search searches all the adjacent nodes first, where depth first search will search down each adjacent node until it hits an end point. Q: Describe a unique algorithm or data structure you find interesting. Design Pattern is also cool. A: kind of open Q: Describe what a deadlock is. A: Two more functions/proccesses/etc are waiting for one another to finish. :( Q: Given an array of data structures that look like: class MenuItem { String Name Array Children } write a single method that will output all the MenuItem names and include the level number in front of them: A: function PrettyPrint(menuItems, level) { foreach(MenuItem item in menuItems) { print level + ". " + item.name if(item.children) PrettyPrint(item.children, level + 1) } }