For a class project we are to implement four types of sorts that they give us, and for the most part i have that working, but i wanted to know what would be a good data structure to use?

Atm im just making an array, if it fills up, i make a new one twice as big and copy over the elements, but for very large files this is pretty slow, are there faster way's to accomplish this?

I had an idea of making a linked list of arrays so as i dont have to copy over, but then i have to deal w/ traversal, would this structure be efficient?

We cant use the stl library so i'll have to write my own ADT, which isnt a problem, just need an idea of an efficient implementation

It depends on the type of sort and data that is being used.