Data Structures and Algorithms In order to solve a computer science problem, we need a set of instructions (an algorithm) that operate on certain input data and produce some output data. Data structures provide efficient storage and efficient access, and modification of data in a computer’s memory [1]. Data Structures and Algorithms are the key foundations required to solve any computer science problem efficiently. Whereas Machine Learning is a powerful medium to solve today’s problems using data, which under the hood is the consumer of data structures and algorithms.