The inventory doesn't need to be sorted, and I will need to delete nodes eventually which will cause problems with searching and rebalancing. I really really really really don't want to write balancing routines, nor do I see any real need for a tree because this program is going to stay small enough for a linear search of a linked list to be efficient enough for my needs. The big question is can I write this without a tree and still get a decent score, because the project says "using arrays, linked lists, and a binary tree".

If I use a tree then that makes for easier searching but if I delete a node from the tree then I have to rebalance it and that's just short of a nightmare at my skill level. So a linked list is really better since this is the last project before I graduate. What I'm going to do is ask my professor if I can write it with just a linked list and dynamic arrays or if I have to have a binary tree. What I'd like to know is which option you guys would take.