Data structure course design