I would use lists. If you work with an array, and delete one of those members, you will have a void member (well, you could move the rest to fit but with large amounts of data it would be a pain). With lists, you can access easily to each member too and memory is used more efficiently, I think. Also, lists give you the ability of add more members (if there is enough memory available). With an array, you have to specify at compile-time its size (at least, in C). So you may get it full.