I am in my first year of programming at a university and we are covering things such as linked lists, maps, binary trees, etc.
Basically, what problems or sub-problems do specific data structures sometimes get used for?
For instance, are there certain specific problems that would do better using a list than a tree? Or are the basic data structers generally mixed together in different ways to form a larger application, where different data structures are used to accomplish different things?
I personally am no expert in C++, but from what I know various data structures such as arrays, vectors, and maps have varying capabilities, and just use them for when they are best used.
For example, if I want to have a set of numbers that are predefined, and the structure is very static, I would use an array. A vector would use more memory, that could be potentially saved. However, if I want to remove, add, and change values of my structure easily, a vector would serve best.