the project will implement a generic data structure which behaves like a set- the sparse array will be implemented as a set of structures, where each structure contains the index of an array member and a pointer to it (this member will be of a generic type). We'll maintain this structure array in sorted order of index, so both insertion and searching will be of the order of the number of elements in the sparse array.
The sparse array will support insertion, deletion, search and update.