Page cover image

Introduction

Data Structures and Algorithms

Data Structures

Data structures define a way to store data to allow it to be accessed and modified. How data is stored can cause some operations to be faster while others to be slower. There isn't a one size fits all type of data structure, it depends entirely on what you plan to do with the data. This course will survey some common data structures but in practice even these often need to augmented and refined to support a specific operation or application. The key is to understand how some common problems have been solved and techniques used to solve the problem.

Algorithms

Given a set of input data, an algorithm defines a sequence of steps that will produce an output. From our point of view an algorithm solves a computational problem, which specifies what the result of a given input should be. (Given X we want to produce Y).

An algorithm describes the steps needed to solve a problem. If we can prove that an algorithm can always produce the correct result for any given valid input then we consider the algorithm to be correct. Some algorithms do not guarantee correctness but they can still be very useful.

This Algorithm notes took from the Algorithms - Part I, Algorithms - Part II from Princeton University.

Last updated