**Table of Contents**

Assigned readings: Sec 9.1, 9.2

We have seen how to use arrays to store one-dimensional lists in memory.

Often there is a need to store and manage data which is conceptually multidimensional.

A table is any two-dimensional arrangement of data. Common uses are timetables, score tables, etc.

Grids are representations of values at physical locations in two dimensions. Grids are commonly used to represent weather data.

A brick is like a grid, but with more than two dimensions. Bricks of data can represent things like MRI images, or weather data including altitude as well as latitude and longitude.

Systems of polynomial equations are commonly stored as a matrix of coefficients, which can then be solved using techniques such as Gaussian elimination.

In all of the examples above, we wish to identify one piece
of data in a collection using multiple coordinates. For example,
we may want to check our schedule for (Mon, 10:00),
find the temperature at latitude, longitude
(43^{o}, 78^{o}),
or measure brain activity at 10mm sagittal, 8mm coronal,
and 12mm transverse (10, 8, 12).

Multidimensional data can be represented as a
*matrix*, which is a multidimensional
collection of numbers. A vector, defined in
Chapter 23, *Arrays* is a is simply a matrix where only
one dimension has a measurement greater than 1. For a
two-dimensional matrix, the row subscript is first by
convention.