Understanding different data structures and when to use them essential as a computer programmer. While many data structures are often hidden away behind layers of abstraction everything we do is built upon these patterns. This knowledge will not only eventually allow you to understand the software layers underneath the abstraction but also help you understand the hardware layer. In addition, these structures introduce a whole new toolset to help you solve problems on a day to day basis. If you study the internals of frameworks like Express and Angular you will find these patterns are relevant and powerful.
A linear data structure is a structure wherein all data elements are adjacent to each other. An array is an example of a linear data structure.
A stack is one of the most foundational yet simplest data structures. A stack is a linear data structure
which is used to store data, it uses LIFO
ordering, that is the last item into the stack is the first item out.