A data structure is a scalable way to store data and manage complexity through abstraction. Data structure should “facilitate access and modifications,” but the exact requirement depends on needs. Data structure can often be discussed without regards to implementation (e.g., stacks can be implemented through arrays, but it does not affect its properties, like LIFO).