Easy Notes is the new initiative of D2G where we put everything in Layman Language. As name suggests it is made up with the help of individual’s notes, up to the point and consist no further explanations especially designed for Aspirants who have little knowledge about the respective Subject. Very Good to brush up your knowledge.

Today’s Topic: Arrays One Liner

**# **The very common linear structure is array. Since arrays are usually easy to traverse, search and sort, they are frequently used to store relatively permanent collections of data.

**#** An array is a list of a finite number n of homogeneous data elements (i.e., data elements of the same type) such that:

**a) ** The elements of the array are referenced respectively by an index consisting of n consecutive numbers.

**b)** The elements of the array are stored respectively in successive memory locations.

**Opearations of Array**

**#** Two basic operations in an array are **storing and retrieving** (extraction)

**# Storing :** A value is stored in an element of the array with the statement of the form,

**Data[i] = X** ; Where I is the valid index in the array

And X is the element

**# Extraction : ** Refers to getting the value of an element stored in an array.

**X = Data [ i ]**, Where I is the valid index of the array and X is the element.

**Array Representation**

**#** The number **n** of elements is called the **length or size of the array.** If not explicitly stated we will assume that the index starts from 0 and end with n-1.

**#** In general, the length (range) or the number of data elements of the array can be obtained from the index by the formula,

**Length = UB – LB + 1**

**#** Where **UB** is the largest index, called the **Upper Bound,** and **LB** is the smallest index, called **Lower Bound**, of the array.

**#** If LB = 0 and UB = 4 then the length is,

**Length = 4 – 0 + 1 = 5**

**#** The elements of an array A may be denoted by the subscript notation (or bracket notation),

**A[0], A[1], A[2], … , A[N]**

**#** The number K in **A[K]** is called a **subscript or an index** and A[K] is called a subscripted variable.

**#** Subscripts allow any element of A to be referenced by its relative position in A.

**#** If each element in the array is referenced by a single subscript, it is called **single dimensional array.**

**#** In other words, the number of subscripts gives the dimension of that array.

**Two-dimensional Arrays**

**#** A two-dimensional **mXn** array A is a collection of **m*n** data elements such that each element is specified by a pair of integers (such as I, J), called subscripts, with the property that,

**0 ≤ I < m and 0 ≤ J < n**

**#** The element of A with first subscript i and second subscript j will be denoted by,

**A[i,j] or A[i][j] (in c language)**

**#** Two-dimensional arrays are called **matrices** in mathematics and **tables** in business applications; hence two-dimensional arrays are sometimes are called **matrix arrays.**

**#** There is a standard way of drawing a two-dimensional mXn array A where the elements of A form a rectangular array with **m rows and n columns** and where the element A[i][j] appears in row i and column j.

**#** A row is a **horizontal list of elements**, and a column is a **vertical list of elements.**

**#** The two-dimensional array will be represented in memory by a block of m*n sequential memory locations.

**#** Specifically, the programming languages will store the array either

**1. ** Column by column, i.e. column-major order, or

**2. ** Row by row, i.e. row-major order.