Linear Data Structures
Linear Data Structures
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Definition of Array
• Array is a data structure that represents a collection of the same types of data.
• Array is a container which can hold a fix number of items and these items
should be of the same type. Most of the data structures make use of arrays to
implement their algorithms.
• Following are the important terms to understand the concept of Array.
1) Element − Each item stored in an array is called an element.
2) Index − Each location of an element in an array has a numerical index,
which is used to identify the element.
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Array Representation
• Arrays can be declared in various ways in different languages. For illustration,
let's take C array declaration.
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Array Representation
• Arrays can be declared in various ways in different languages. For illustration,
let's take C array declaration.
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Array Representation
• Arrays can be declared in various ways in different languages. For illustration,
let's take C array declaration.
Operations on Array
Following are the basic operations supported by an array.
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Creating Array
Example:
myList = new double[10];
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Traverse Operation
This operation is to traverse through the elements of an array.
Example:
Following program traverses and prints the elements of an array:
#include <stdio.h>
main() {
int LA[] = {1,3,5,7,8};
int item = 10, k = 3, n = 5;
int i = 0, j = n;
printf("The original array elements are :\n");
for(i = 0; i<n; i++) {
printf("LA[%d] = %d \n", i, LA[i]);
}
}
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Traverse Operation
When we compile and execute the above program, it produces the following
result −
Output:
The original array elements are :
LA[0] = 1
LA[1] = 3
LA[2] = 5
LA[3] = 7
LA[4] = 8
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Insertion Operation
• Insert operation is to insert one or more data elements into an array. Based
on the requirement, a new element can be added at the beginning, end, or
any given index of array.
BCA-S202T: DS
Insertion Operation
#include <stdio.h>
main() {
int LA[] = {1,3,5,7,8};
int item = 10, k = 3, n = 5;
int i = 0, j = n;
printf("The original array elements are :\n");
for(i = 0; i<n; i++)
{ printf("LA[%d] = %d \n", i, LA[i]); }
n = n + 1;
while( j >= k) { LA[j+1] = LA[j];
j = j - 1; }
LA[k] = item;
printf("The array elements after insertion :\n");
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Insertion Operation
Output:
The original array elements are :
LA[0] = 1
LA[1] = 3
LA[2] = 5
LA[3] = 7
LA[4] = 8
The array elements after insertion :
LA[0] = 1
LA[1] = 3
LA[2] = 5
LA[3] = 10
LA[4] = 7
LA[5] = 8
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Deletion Operation
Deletion refers to removing an existing element from the array and
reorganizing all elements of an array.
Algorithm:
Consider LA is a linear array with N elements and K is a positive integer such
that K<=N. Following is the algorithm to delete an element available at the Kth
position of LA.
1. Start
2. Set J = K
3. Repeat steps 4 and 5 while J < N
4. Set LA[J] = LA[J + 1]
5. Set J = J+1
6. Set N = N-1
7. Stop
BCA-S202T: DS
Deletion Operation
#include <stdio.h>
void main() {
int LA[] = {1,3,5,7,8};
int k = 3, n = 5;
int i, j;
printf("The original array elements are :\n");
n = n -1;
printf("The array elements after deletion :\n");
for(i = 0; i<n; i++) {
printf("LA[%d] = %d \n", i, LA[i]);
}
}
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Deletion Operation
Output:
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Search Operation
You can perform a search for an array element based on its value or its index.
Algorithm:
Consider LA is a linear array with N elements and K is a positive integer such
that K<=N. Following is the algorithm to find an element with a value of ITEM
using sequential search.
1. Start
2. Set J = 0
3. Repeat steps 4 and 5 while J < N
4. IF LA[J] is equal ITEM THEN GOTO STEP 6
5. Set J = J +1
6. PRINT J, ITEM
7. Stop
BCA-S202T: DS
Search Operation
#include <stdio.h>
void main() {
int LA[] = {1,3,5,7,8};
int item = 5, n = 5;
int i = 0, j = 0;
printf("The original array elements are :\n");
j = j + 1;
}
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Search Operation
When we compile and execute the above program, it produces the following
result −
The original array éléments are :
LA[0] = 1
LA[1] = 3
LA[2] = 5
LA[3] = 7
LA[4] = 8
Found element 5 at position 3
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Update Operation
Update operation refers to updating an existing element from the array at a
given index.
Algorithm
Consider LA is a linear array with N elements and K is a positive integer such
that K<=N. Following is the algorithm to update an element available at the
Kth position of LA.
1. Start
2. Set LA[K-1] = ITEM
3. Stop
BCA-S202T: DS
Update Operation
#include <stdio.h>
void main() {
int LA[] = {1,3,5,7,8};
int k = 3, n = 5, item = 10;
int i, j;
printf("The original array elements are :\n");
LA[k-1] = item;
BCA-S202T: DS
Unit 1 : Introduction to Data Structures
Update Operation
When we compile and execute the above program, it produces the following result
Output
The original array elements are :
LA[0] = 1
LA[1] = 3
LA[2] = 5
LA[3] = 7
LA[4] = 8
The array elements after updation :
LA[0] = 1
LA[1] = 3
LA[2] = 10
LA[3] = 7
LA[4] = 8
BCA-S202T: DS