Tries (they are effectively trees, but it's still good to call them out separately).
An example of this would be the array data structure for organising data with index & value pairs, like Customer ID (index) & Customer Phone Number (value) pair. This is called a "Linear" data structure. Other data structures include:
- Tree: binary, heaps, space partitioning, etc.
- Hash: distributed hash table, hash tree, etc.
- Graphs: decision, directed, acyclic, etc.
A data structure is a collection of data type ‘values’ which are stored and organized in such a way that it allows for efficient access and modification. In some cases a data structure can become the underlying implementation for a particular data type.
For example, composite data types are data structures that are composed of primitive data types and/or other composite types, whereas an abstract data type will define a set of behaviours (almost like an ‘interface’ in a sense) for which a particular data structure can be used as the concrete implementation for that data type.
When we think of data structures, there are generally four forms:
1-Linear: arrays, lists
2- Tree: binary, heaps, space partitioning etc.
3- Hash: distributed hash table, hash tree etc.
4 - Graphs: decision, directed, acyclic etc.
All the answers are correct. Here is a site I found with a little more detail
If I would have to choose from only 3, I would take those in order:
- array because I am not sure what I would do without that one.
- hash table// system b-tree : one of them because I am often required to store and search and those are efficient.
- Linked List: because after array and hash, this is the one I tempt to use a lot (and from it, could implement many of the others).