I will add - if you need any support implementing what ever data structure you choose in C, then just give me a shout. Many people learn datastructures on an OO language, and can find it difficult to make the transition into an imperative language.