Some companies will put you in front of a whiteboard and ask detailed technical questions like the ones you listed. Sometimes this is to see if you know your stuff, and sometimes it's just to evaluate how you handle yourself in technical discussions under pressure.
Other companies will ask more general technical questions, like "how would you go about storing and displaying a list with over 1000 entries?" They aren't interested so much in implementations of sort algorithms, but rather in hearing how you think and solve problems.
In my experience the latter is much more common than the former. In my opinion, the latter is also much more valuable than the former.
It's not unreasonable to call/email your point of contact with the company and ask what to expect from the interview in terms of technical depth. In general, though, companies do not expect you to prove that you know very detailed information that most employees would not know off-hand.