# Lecture 2 Arrays - PowerPoint PPT Presentation

1 / 17

Lecture 2 Arrays. Linear Data structures. Linear form a sequence Linear relationship b/w the elements represented by means of sequential memory location Link list and arrays are linear relationship Non-Linear Structure are Trees and Graphs. Operation performed by Linear Structure.

I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.

Lecture 2 Arrays

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

## Lecture 2Arrays

### Linear Data structures

• Linear form a sequence

• Linear relationship b/w the elements

• represented by means of sequential memory location

• Link list and arrays are linear relationship

• Non-Linear Structure are Trees and Graphs

### Operation performed by Linear Structure

• Traversal: Processing each element in the list

• Search : Find the location of the element with a given value or the record with a given key

• Insertion : Adding new element to the list

• Deletion : Removing an element from the list

• Sorting : Arranging the elements in some type of order

• Merging : Combining two list into single list

### Linear Array

• List of finite number N of homogenous data elements (i.e. data elements of same type) such that

• The elements of the array are referenced respectively by an index set consisting of N consecutive number

• The elements of the array are stored respectively in successive memory location

### Length of Array

• N = length of array

Length = UB – LB + 1

• UB = Upper Bound or Largest Index

• LB= Lower Bound or smallest Index

### Representation in Memory

• Address of any element in Array =

LOC(LA[k])=Base (LA) + w (k - LB)

• LOC(LA[k]) =Address of element LA[k] of the Array LA

• Base (LA) = Base Address of LA

• w = No. of words per memory cell for the Array LA

• k = Any element of Array

### Multidimensional Arrays

• Two Dimensional Arrays

• Matrices in Mathematics

• Matrix Arrays

1 2 3

1A[1,1]A[1,2]A[1,3]

2A[2,1]A[2,2]A[2,3]

3A[3,1]A[3,2]A[3,3]

### Column and Row Major Order 2 Dimension

Loc(A[J,K])= Base(A) + w [M(K-1)+(J-1)] (Column Major Order)

Loc(A[J,K])= Base(A) + w [N(J-1)+(K-1)] (Row Major Order)

### Column and Row Major Order 3 Dimension

Length = Upper Bound – Lower Bound +1

Effective Index = Index Number – Lower Bound

### Column and Row Major Order 3 Dimension

Length = Upper Bound – Lower Bound +1

Effective Index = Index Number – Lower Bound

Row Major Order:

Loc = Base + w(E1L2+E2)L3+E3)

Column Major Order:

Loc = Base + w(E3L2+E2)L1+E1)

### Operations on Array

• Traversing a Linear Array

TraverseArray (LA, LB, UB)

Function: This algorithm traverse LA applying an operation PROCESS to each element of LA

Input: LA is a Linear Array with Lower Bound LB and Upper bound UB

Algorithm:

• [Initialize Counter] Set K:=LB

• Repeat Steps 3 and 4 while K≤UB

• [Visit element] Apply PROCESS to LA[K]

• [Increase counter] Set K:=K+1

[End of Step 2 loop]

5. Exit

### Operations Cont….

• Insert an element in Linear Array

InsertElement (LA, ITEM, N, K)

Function: This algorithm insert an element in a Linear Array at required position

Input: LA is a Linear Array having N elements

ITEM is the element to be inserted at given position K

Precondition: K≤N where K is a +ve integer

Algorithm:

• [Initialize Counter] Set J:=N

• Repeat Steps 3 and 4 while J≥K

• [Move Jth element downward] Set LA[J+1] := LA[J]

• [Decrease counter] Set J:=J-1

[End of Step 2 loop]

5. [Insert element] Set LA[K]:=ITEM

6. [Reset N] N:= N+1

7. Exit

### Operation Cont….

• Delete an element from a Linear Array

DeleteElement (LA, ITEM, N, K)

Function: This algorithm delete an element from a given position in Linear Array

Input: LA is a Linear Array having N elements

K is the position given from which ITEM needs to be deleted

Output: ITEM is the element deleted from the given position K

Precondition: K≤N where K is a +ve integer

Algorithm:

• Set ITEM:=LA[K]

• Set J:= K

• Repeat Steps 4 and 5 while J<N

• [Move Jth element upward] Set LA[J] := LA[J+1]

• [Increase counter] Set J:=J+1

[End of Step 3 loop]

6. [Reset N] N:= N-1

7. Exit