Online Data Structures: A Pseudocode Approach With C 2004