Data structures are ways of organizing and storing data. Algorithms are ways of manipulating and processing data. Often, algorithms are performed on specific data structures to be effective. In computation, we always want to use less time and less space to perform the same computation.