I don't get what is wrong with expecting a candidate to have carefully read an algorithms book at some point in their lives. Most software engineering jobs expect a degree in CS, that implies 3-4 years of study. You should be able to remember important information related to CS.