If you were designing a new house, it would probably have a front door, a back door and a sloping roof. There are tried and tested ways of doing certain things, because they work. Software design is no exception. Well known data structures provide efficient ways of storing data for particular purposes, and efficient algorithms for working with it.
Some well known data structures include:
- Linear list
- Stack
- Queue
- Linked list
- Tree
- Graph