I think there is a place for both. Maybe not data structures, but things like application architecture and development practices are ripe for good discussion.
A well designed take home assignment, meanwhile can be a good filter, telling you immediately if the candidate knows the basics and has the added benefit of showing you strengths and weaknesses in their practice.