SlideShare a Scribd company logo
ARRAYS
Sunawar Khan Ahsan
MS(CS)
IIUI
ARRAYS & Matrices
SK Ahsan
WHAT IS ARRAYS?
 An array is a group of consecutive memory locations
with same name and data type.
 Simple variable is a single memory location with unique
name and a type. But an Array is collection of different
adjacent memory locations. All these memory locations
have one collective name and type.
 The memory locations in the array are known as
elements of array.The total number of elements in the
array is called length.
 The elements of array is accessed with reference to its
position in array, that is call index or subscript.
ARRAYS & Matrices
SK Ahsan
WHAT IS AN ARRAY?
■ We refer to all stored values in an array by its
name
■ If we would like to access a particular value
stored in an array, we specify its index (i.e. its
position relative to the first array value)
– The first array index is always 0
– The second value is stored in index 1
– Etc.
ARRAYS & Matrices
SK Ahsan
WHAT IS AN ARRAYS?
■ Arrays
– Structures of related data items
– Static entity (same size throughout program)
■ A few types
– Pointer-based arrays (C-like)
– Arrays as objects (C++)
ARRAYS & Matrices
SK Ahsan
Advantages / Uses of Arrays
■ Arrays can store a large number of value with single name.
■ Arrays are used to process many value easily and quickly.
■ The values stored in an array can be sorted easily.
■ The search process can be applied on arrays easily.
ARRAYS & Matrices
SK Ahsan
Types of Arrays:
–One-Dimensional Array
–Two-Dimensional Array
–N-Dimensional Array
ARRAYS & Matrices
SK Ahsan
One-D Array
A type of array in which all elements are arranged in the form of a list is known as 1-D array or
single dimensional array or linear list.
Declaring 1-DArray:
data_type identifier[length]; e.g: int marks[5];
o Data _type: Data type of values to be stored in the array.
o Identifier: Name of the array.
o Length: Number of elements.
ARRAYS & Matrices
SK Ahsan
ARRAY INITIALIZATION
■ Initializing arrays
– For loop
■ Set each element
– Initializer list
■ Specify each element when array declared
int n[ 5 ] = { 1, 2, 3, 4, 5 };
■ If not enough initializers, rightmost elements 0
■ If too many syntax error
– To set every element to same value
int n[ 5 ] = { 0 };
– If array size omitted, initializers determine size
int n[] = { 1, 2, 3, 4, 5 };
■ 5 initializers, therefore 5 element array
8
ARRAYS & Matrices
SK Ahsan
One-D array Intialization
The process of assigning values to array elements at the time of array declaration is called array
initialization.
Syntax:
data_type identifier[length]={ List of values }; e.g: int marks[5]={70,54,82,96,49};
o Data _type: Data type of values to be stored in the array.
o Identifier: Name of the array.
o Length: Number of elements
o List of values: Values to initialize the array. Initializing values must be constant
70 54 82 96 49
ARRAYS & Matrices
SK Ahsan
Accessing element of array
■ Individual Element:
Array_name[index];
■ Using Loop:
int marks[5];
for(int i=0;i<=4;i++)
marks[i]=i;
ARRAYS & Matrices
SK Ahsan
INITIALIZE AND ACCESS INDIVIDUAL INDEX
// This program displays the number of days in each month.
// It uses a 12-element int array.
#include <iostream.h>
void main(void)
{
int days[12];
days[0] = 31; // January
days[1] = 28; // February
days[2] = 31; // March
days[3] = 30; // April
days[4] = 31; // May
days[5] = 30; // June
days[6] = 31; // July
ARRAYS & Matrices
SK Ahsan
Cont…
days[7] = 31; // August
days[8] = 30; // September
days[9] = 31; // October
days[10] = 30; // November
days[11] = 31; // December
for (int count = 0; count < 12; count++)
{
cout << "Month " << (count + 1) << " has ";
cout << days[count] << " days.n";
}
}
ARRAYS & Matrices
SK Ahsan
Output
Month 1 has 31 days.
Month 2 has 28 days.
Month 3 has 31 days.
Month 4 has 30 days.
Month 5 has 31 days.
Month 6 has 30 days.
Month 7 has 31 days.
Month 8 has 31 days.
Month 9 has 30 days.
Month 10 has 31 days.
Month 11 has 30 days.
Month 12 has 31 days.
ARRAYS & Matrices
SK Ahsan
PARTIAL ARRAY INITIALIZATION
// This program displays the number of days in each month.
// It uses a 12-element int array.
#include <iostream.h>
void main(void)
{
int days[12] = {31, 28, 31, 30,
31, 30, 31, 31,
30, 31, 30, 31};
for (int count = 0; count < 12; count++)
{
cout << "Month " << (count + 1) << " has ";
cout << days[count] << " days.n";
}
}
ARRAYS & Matrices
SK Ahsan
OUTPUT
Month 1 has 31 days.
Month 2 has 28 days.
Month 3 has 31 days.
Month 4 has 30 days.
Month 5 has 31 days.
Month 6 has 30 days.
Month 7 has 31 days.
Month 8 has 31 days.
Month 9 has 30 days.
Month 10 has 31 days.
Month 11 has 30 days.
Month 12 has 31 days.
15
ARRAYS & Matrices
SK Ahsan
Print ASCIIValues
// This program uses an array of ten characters to store the
// first ten letters of the alphabet. The ASCII codes of the
// characters are displayed.
#include <iostream.h>
void main(void)
{
char letters[10] = {'A', 'B', 'C', 'D', 'E',
'F', 'G', 'H', 'I', 'J'};
cout << "Character" << "t" << "ASCII Coden";
cout << "--------" << "t" << "----------n";
for (int count = 0; count < 10; count++)
{
cout << letters[count] << "tt";
cout << int(letters[count]) << endl;
}
}
16
ARRAYS & Matrices
SK Ahsan
Output
Character ASCII Code
--------- ----------
A 65
B 66
C 67
D 68
E 69
F 70
G 71
H 72
I 73
J 74
ARRAYS & Matrices
SK Ahsan
// Histogram printing program.
#include <iostream>
#include <iomanip>
using std::setw;
int main() {
const int arraySize = 10;
int n[ arraySize ] = { 19, 3, 15, 7, 11, 9, 13, 5, 17, 1 };
cout << "Element" << setw( 13 ) << "Value"<< setw( 17 ) << "Histogram"<< endl;
// for each element of array n, output a bar in histogram
for ( int i = 0; i < arraySize; i++ ) {
cout << setw( 7 ) << i << setw( 13 )<< n[ i ] << setw( 9 );
for ( int j = 0; j < n[ i ]; j++ ) // print one bar
cout << '*';
cout << endl; // start next line of output
} // end outer for structure
return 0; // indicates successful termination
} // end main
PRINT HISTOGRAM
Element Value Histogram
0 19 *******************
1 3 ***
2 15 ***************
3 7 *******
4 11 ***********
5 9 *********
6 13 *************
7 5 *****
8 17 *****************
9 1 *
ARRAYS & Matrices
SK Ahsan
#include <iostream>
#include <stdlib.h>
using namespace std;
int main(){
float a[] = { 22.2,44.4, 66.6 };
float x=11.1;
cout << "I m going to Crash " << endl;
cin >> x;
a[3333] = 88.8; // ERROR: index is out of bounds!
system("PAUSE"); return 0;
}
ARRAY OUT OF BOUND
ARRAYS & Matrices
SK Ahsan
Searching In Array
Searching is a process of finding the required data in the array. Searching becomes more
important when the length of the array is very large.
There are two techniques to searching elements in array as follows:
■ Sequential search
■ Binary search
ARRAYS & Matrices
SK Ahsan
Sequential Search
Sequential search is also known as linear or serial search. It follows the following step to search a
value in array.
– Visit the first element of array and compare its value with required value.
– If the value of array matches with the desired value, the search is complete.
– If the value of array does not match, move to next element an repeat same process.
ARRAYS & Matrices
SK Ahsan
Binary Search
Binary search is a quicker method of searching for value in the array. Binary search is very quick but
it can only search an sorted array. It cannot be applied on an unsorted array.
o It locates the middle element of array and compare with desired number.
o If they are equal, search is successful and the index of middle element is returned.
o If they are not equal, it reduces the search to half of the array.
o If the search number is less than the middle element, it searches the first half of array.
Otherwise it searches the second half of the array.The process continues until the required
number is found or loop completes without successful search.
ARRAYS & Matrices
SK Ahsan
Sorting Arrays
Sorting is a process of arranging the value of array in a particular order. An array can be sorted
in two order.
o Ascending Order
o DescendingOrder
12 25 33 37 48
48 37 33 25 12
ARRAYS & Matrices
SK Ahsan
Techniques Of Sorting Array
There are two techniques of sorting array:
o Selection Sort
o Bubble Sort
ARRAYS & Matrices
SK Ahsan
Selection Sort
Selection sort is a technique that sort an array. It selects an element in the array and moves it
to its proper position. Selection sort works as follows:
1. Find the minimum value in the list.
2. Swap it with value in the first position.
3. Sort the remainder of the list excluding the first value.
ARRAYS & Matrices
SK Ahsan
Bubble Sort
Bubble Sort is also known as exchange sort. It repeatedly visits the array and compares two
items at a time. It works as follows:
o Compare adjacent element. If the first is greater than the second, swap them.
o Repeat this for each pair of adjacent element, starting with the first two and ending
with the last two. (at this point last element should be greatest).
o Repeat the step for all elements except the last one.
o Keep repeating for one fewer element each time until there are no pairs to compare.
ARRAYS & Matrices
SK Ahsan
Two-D Arrays
Two-D array can be considered as table that consists of rows and columns. Each element in 2-D array
is refered with the help of two indexes. One index indicates row and second indicates the column.
Declaring 2-D Array:
Data_type Identifier[row][column];
e.g: int arr[4][3];
o Data _type: Data type of values to be stored in the array.
o Identifier: Name of the array.
o Rows : # of Rows in the table of array.
o Column : # of Columns in the table of array.
0,0 0,1 0,2
1,0 1,1 1,2
2,0 2,1 2,2
3,0 3,1 3,2
ARRAYS & Matrices
SK Ahsan
Two-D array Intialization
The two-D array can also be initialized at the time of declaration. Initialization is performed by assigning
the initial values in braces seperated by commas.
Some important points :
o The elements of each row are enclosed within braces and seperated by comma.
o All rows are enclosed within braces.
o For number arrays, if all elements are not specified , the un specified elements are initialized by
zero.
ARRAYS & Matrices
SK Ahsan
Two-D array Intialization
Syntax:
int arr[4][3]={ {12,5,22},
{95,3,41},
{77,6,53},
{84,59,62} }
12 5 22
95 3 41
77 6 53
84 59 62
Column indexes
Row indexes
0
2
1
3
10 2
ARRAYS & Matrices
SK Ahsan
Case Study: Computing Mean, Median and Mode
Using Arrays
■ Mean
– Average (sum/number of elements)
■ Median
– Number in middle of sorted list
– 1, 2, 3, 4, 5 (3 is median)
– If even number of elements, take average of middle two
■ Mode
– Number that occurs most often
– 1, 1, 1, 2, 3, 3, 4, 5 (1 is mode)
ARRAYS & Matrices
SK Ahsan
Case Study
■Find Set Properties
–Set Union
–Set Differences

More Related Content

PPT
arrays
PPTX
Data Structures - Lecture 3 [Arrays]
PPT
One dimensional 2
PPT
Array i imp
PPT
Chap09
PPTX
Arrays in Java
PPTX
Arrays In C++
PPTX
Array Introduction One-dimensional array Multidimensional array
arrays
Data Structures - Lecture 3 [Arrays]
One dimensional 2
Array i imp
Chap09
Arrays in Java
Arrays In C++
Array Introduction One-dimensional array Multidimensional array

What's hot (20)

PPT
Array
PPT
Java Arrays
PPT
Lec 25 - arrays-strings
PPTX
Set data structure
PPT
Arrays and structures
PPT
Array 31.8.2020 updated
PDF
An Introduction to Programming in Java: Arrays
PPT
PPTX
Java arrays
PPTX
PDF
Arrays in C
PPTX
PPTX
Array ppt
PPTX
Two dimensional arrays
PPT
1 D Arrays in C++
PPT
Array in Java
PPTX
Multi-Dimensional Lists
PPTX
Data structures in c#
PPTX
2D Array
Array
Java Arrays
Lec 25 - arrays-strings
Set data structure
Arrays and structures
Array 31.8.2020 updated
An Introduction to Programming in Java: Arrays
Java arrays
Arrays in C
Array ppt
Two dimensional arrays
1 D Arrays in C++
Array in Java
Multi-Dimensional Lists
Data structures in c#
2D Array
Ad

Viewers also liked (13)

PDF
Fibre presentation1
PDF
Tax Season 2016
PDF
3B-35G SIGINT School Certificate
DOC
Resume_Mahesh
PDF
Favorite spring flower
PDF
Senior Recruitment AWNBG
PPTX
Metabolic basis of Muscular Fatigue
PDF
Pravin kantariya
PDF
AAPOR 2016 - Dutwin and Buskirk - Apples to Oranges
PPT
LF presentation
PPTX
Interdisciplinary teaching
PDF
Watson Analytics Presentation
Fibre presentation1
Tax Season 2016
3B-35G SIGINT School Certificate
Resume_Mahesh
Favorite spring flower
Senior Recruitment AWNBG
Metabolic basis of Muscular Fatigue
Pravin kantariya
AAPOR 2016 - Dutwin and Buskirk - Apples to Oranges
LF presentation
Interdisciplinary teaching
Watson Analytics Presentation
Ad

Similar to Arrays (20)

PPTX
arrayppt.pptx
PPTX
ARRAY PPT.pptx for mca finals placement
PPTX
Arrays
PDF
Array.pdf
PPTX
PPT
Presentation of array
PPTX
C_Arrays(3)bzxhgvxgxg.xhjvxugvxuxuxuxvxugvx.pptx
PPTX
Different type of Arrays and multidimensional arrays
PPTX
ARRAYS.pptx
PPTX
Data structure.pptx
PPTX
Ch-11-Arrays.ppt-1.pptx eurhrbdhdbdhrhdhdh
PPTX
Module_3_Arrays - Updated.pptx............
PDF
C_Dayyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy 5.pdf
PPTX
Array 1D.................................pptx
PPTX
Arrays
 
PPT
358 33 powerpoint-slides_5-arrays_chapter-5
PPTX
arrays.pptx
PPT
C++ Arrays
PPT
C++ Arrays
arrayppt.pptx
ARRAY PPT.pptx for mca finals placement
Arrays
Array.pdf
Presentation of array
C_Arrays(3)bzxhgvxgxg.xhjvxugvxuxuxuxvxugvx.pptx
Different type of Arrays and multidimensional arrays
ARRAYS.pptx
Data structure.pptx
Ch-11-Arrays.ppt-1.pptx eurhrbdhdbdhrhdhdh
Module_3_Arrays - Updated.pptx............
C_Dayyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy 5.pdf
Array 1D.................................pptx
Arrays
 
358 33 powerpoint-slides_5-arrays_chapter-5
arrays.pptx
C++ Arrays
C++ Arrays

More from International Islamic University (20)

Recently uploaded (20)

PPTX
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
PPTX
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
PDF
102 student loan defaulters named and shamed – Is someone you know on the list?
PDF
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
PDF
Supply Chain Operations Speaking Notes -ICLT Program
PDF
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
PDF
O7-L3 Supply Chain Operations - ICLT Program
PPTX
Pharma ospi slides which help in ospi learning
PPTX
Cell Structure & Organelles in detailed.
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PPTX
Pharmacology of Heart Failure /Pharmacotherapy of CHF
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
Module 4: Burden of Disease Tutorial Slides S2 2025
PDF
Microbial disease of the cardiovascular and lymphatic systems
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PPTX
Cell Types and Its function , kingdom of life
PDF
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
PDF
Pre independence Education in Inndia.pdf
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PPTX
master seminar digital applications in india
school management -TNTEU- B.Ed., Semester II Unit 1.pptx
Introduction_to_Human_Anatomy_and_Physiology_for_B.Pharm.pptx
102 student loan defaulters named and shamed – Is someone you know on the list?
3rd Neelam Sanjeevareddy Memorial Lecture.pdf
Supply Chain Operations Speaking Notes -ICLT Program
Chapter 2 Heredity, Prenatal Development, and Birth.pdf
O7-L3 Supply Chain Operations - ICLT Program
Pharma ospi slides which help in ospi learning
Cell Structure & Organelles in detailed.
STATICS OF THE RIGID BODIES Hibbelers.pdf
Pharmacology of Heart Failure /Pharmacotherapy of CHF
Microbial diseases, their pathogenesis and prophylaxis
Module 4: Burden of Disease Tutorial Slides S2 2025
Microbial disease of the cardiovascular and lymphatic systems
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
Cell Types and Its function , kingdom of life
Mark Klimek Lecture Notes_240423 revision books _173037.pdf
Pre independence Education in Inndia.pdf
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
master seminar digital applications in india

Arrays

  • 2. ARRAYS & Matrices SK Ahsan WHAT IS ARRAYS?  An array is a group of consecutive memory locations with same name and data type.  Simple variable is a single memory location with unique name and a type. But an Array is collection of different adjacent memory locations. All these memory locations have one collective name and type.  The memory locations in the array are known as elements of array.The total number of elements in the array is called length.  The elements of array is accessed with reference to its position in array, that is call index or subscript.
  • 3. ARRAYS & Matrices SK Ahsan WHAT IS AN ARRAY? ■ We refer to all stored values in an array by its name ■ If we would like to access a particular value stored in an array, we specify its index (i.e. its position relative to the first array value) – The first array index is always 0 – The second value is stored in index 1 – Etc.
  • 4. ARRAYS & Matrices SK Ahsan WHAT IS AN ARRAYS? ■ Arrays – Structures of related data items – Static entity (same size throughout program) ■ A few types – Pointer-based arrays (C-like) – Arrays as objects (C++)
  • 5. ARRAYS & Matrices SK Ahsan Advantages / Uses of Arrays ■ Arrays can store a large number of value with single name. ■ Arrays are used to process many value easily and quickly. ■ The values stored in an array can be sorted easily. ■ The search process can be applied on arrays easily.
  • 6. ARRAYS & Matrices SK Ahsan Types of Arrays: –One-Dimensional Array –Two-Dimensional Array –N-Dimensional Array
  • 7. ARRAYS & Matrices SK Ahsan One-D Array A type of array in which all elements are arranged in the form of a list is known as 1-D array or single dimensional array or linear list. Declaring 1-DArray: data_type identifier[length]; e.g: int marks[5]; o Data _type: Data type of values to be stored in the array. o Identifier: Name of the array. o Length: Number of elements.
  • 8. ARRAYS & Matrices SK Ahsan ARRAY INITIALIZATION ■ Initializing arrays – For loop ■ Set each element – Initializer list ■ Specify each element when array declared int n[ 5 ] = { 1, 2, 3, 4, 5 }; ■ If not enough initializers, rightmost elements 0 ■ If too many syntax error – To set every element to same value int n[ 5 ] = { 0 }; – If array size omitted, initializers determine size int n[] = { 1, 2, 3, 4, 5 }; ■ 5 initializers, therefore 5 element array 8
  • 9. ARRAYS & Matrices SK Ahsan One-D array Intialization The process of assigning values to array elements at the time of array declaration is called array initialization. Syntax: data_type identifier[length]={ List of values }; e.g: int marks[5]={70,54,82,96,49}; o Data _type: Data type of values to be stored in the array. o Identifier: Name of the array. o Length: Number of elements o List of values: Values to initialize the array. Initializing values must be constant 70 54 82 96 49
  • 10. ARRAYS & Matrices SK Ahsan Accessing element of array ■ Individual Element: Array_name[index]; ■ Using Loop: int marks[5]; for(int i=0;i<=4;i++) marks[i]=i;
  • 11. ARRAYS & Matrices SK Ahsan INITIALIZE AND ACCESS INDIVIDUAL INDEX // This program displays the number of days in each month. // It uses a 12-element int array. #include <iostream.h> void main(void) { int days[12]; days[0] = 31; // January days[1] = 28; // February days[2] = 31; // March days[3] = 30; // April days[4] = 31; // May days[5] = 30; // June days[6] = 31; // July
  • 12. ARRAYS & Matrices SK Ahsan Cont… days[7] = 31; // August days[8] = 30; // September days[9] = 31; // October days[10] = 30; // November days[11] = 31; // December for (int count = 0; count < 12; count++) { cout << "Month " << (count + 1) << " has "; cout << days[count] << " days.n"; } }
  • 13. ARRAYS & Matrices SK Ahsan Output Month 1 has 31 days. Month 2 has 28 days. Month 3 has 31 days. Month 4 has 30 days. Month 5 has 31 days. Month 6 has 30 days. Month 7 has 31 days. Month 8 has 31 days. Month 9 has 30 days. Month 10 has 31 days. Month 11 has 30 days. Month 12 has 31 days.
  • 14. ARRAYS & Matrices SK Ahsan PARTIAL ARRAY INITIALIZATION // This program displays the number of days in each month. // It uses a 12-element int array. #include <iostream.h> void main(void) { int days[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; for (int count = 0; count < 12; count++) { cout << "Month " << (count + 1) << " has "; cout << days[count] << " days.n"; } }
  • 15. ARRAYS & Matrices SK Ahsan OUTPUT Month 1 has 31 days. Month 2 has 28 days. Month 3 has 31 days. Month 4 has 30 days. Month 5 has 31 days. Month 6 has 30 days. Month 7 has 31 days. Month 8 has 31 days. Month 9 has 30 days. Month 10 has 31 days. Month 11 has 30 days. Month 12 has 31 days. 15
  • 16. ARRAYS & Matrices SK Ahsan Print ASCIIValues // This program uses an array of ten characters to store the // first ten letters of the alphabet. The ASCII codes of the // characters are displayed. #include <iostream.h> void main(void) { char letters[10] = {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J'}; cout << "Character" << "t" << "ASCII Coden"; cout << "--------" << "t" << "----------n"; for (int count = 0; count < 10; count++) { cout << letters[count] << "tt"; cout << int(letters[count]) << endl; } } 16
  • 17. ARRAYS & Matrices SK Ahsan Output Character ASCII Code --------- ---------- A 65 B 66 C 67 D 68 E 69 F 70 G 71 H 72 I 73 J 74
  • 18. ARRAYS & Matrices SK Ahsan // Histogram printing program. #include <iostream> #include <iomanip> using std::setw; int main() { const int arraySize = 10; int n[ arraySize ] = { 19, 3, 15, 7, 11, 9, 13, 5, 17, 1 }; cout << "Element" << setw( 13 ) << "Value"<< setw( 17 ) << "Histogram"<< endl; // for each element of array n, output a bar in histogram for ( int i = 0; i < arraySize; i++ ) { cout << setw( 7 ) << i << setw( 13 )<< n[ i ] << setw( 9 ); for ( int j = 0; j < n[ i ]; j++ ) // print one bar cout << '*'; cout << endl; // start next line of output } // end outer for structure return 0; // indicates successful termination } // end main PRINT HISTOGRAM Element Value Histogram 0 19 ******************* 1 3 *** 2 15 *************** 3 7 ******* 4 11 *********** 5 9 ********* 6 13 ************* 7 5 ***** 8 17 ***************** 9 1 *
  • 19. ARRAYS & Matrices SK Ahsan #include <iostream> #include <stdlib.h> using namespace std; int main(){ float a[] = { 22.2,44.4, 66.6 }; float x=11.1; cout << "I m going to Crash " << endl; cin >> x; a[3333] = 88.8; // ERROR: index is out of bounds! system("PAUSE"); return 0; } ARRAY OUT OF BOUND
  • 20. ARRAYS & Matrices SK Ahsan Searching In Array Searching is a process of finding the required data in the array. Searching becomes more important when the length of the array is very large. There are two techniques to searching elements in array as follows: ■ Sequential search ■ Binary search
  • 21. ARRAYS & Matrices SK Ahsan Sequential Search Sequential search is also known as linear or serial search. It follows the following step to search a value in array. – Visit the first element of array and compare its value with required value. – If the value of array matches with the desired value, the search is complete. – If the value of array does not match, move to next element an repeat same process.
  • 22. ARRAYS & Matrices SK Ahsan Binary Search Binary search is a quicker method of searching for value in the array. Binary search is very quick but it can only search an sorted array. It cannot be applied on an unsorted array. o It locates the middle element of array and compare with desired number. o If they are equal, search is successful and the index of middle element is returned. o If they are not equal, it reduces the search to half of the array. o If the search number is less than the middle element, it searches the first half of array. Otherwise it searches the second half of the array.The process continues until the required number is found or loop completes without successful search.
  • 23. ARRAYS & Matrices SK Ahsan Sorting Arrays Sorting is a process of arranging the value of array in a particular order. An array can be sorted in two order. o Ascending Order o DescendingOrder 12 25 33 37 48 48 37 33 25 12
  • 24. ARRAYS & Matrices SK Ahsan Techniques Of Sorting Array There are two techniques of sorting array: o Selection Sort o Bubble Sort
  • 25. ARRAYS & Matrices SK Ahsan Selection Sort Selection sort is a technique that sort an array. It selects an element in the array and moves it to its proper position. Selection sort works as follows: 1. Find the minimum value in the list. 2. Swap it with value in the first position. 3. Sort the remainder of the list excluding the first value.
  • 26. ARRAYS & Matrices SK Ahsan Bubble Sort Bubble Sort is also known as exchange sort. It repeatedly visits the array and compares two items at a time. It works as follows: o Compare adjacent element. If the first is greater than the second, swap them. o Repeat this for each pair of adjacent element, starting with the first two and ending with the last two. (at this point last element should be greatest). o Repeat the step for all elements except the last one. o Keep repeating for one fewer element each time until there are no pairs to compare.
  • 27. ARRAYS & Matrices SK Ahsan Two-D Arrays Two-D array can be considered as table that consists of rows and columns. Each element in 2-D array is refered with the help of two indexes. One index indicates row and second indicates the column. Declaring 2-D Array: Data_type Identifier[row][column]; e.g: int arr[4][3]; o Data _type: Data type of values to be stored in the array. o Identifier: Name of the array. o Rows : # of Rows in the table of array. o Column : # of Columns in the table of array. 0,0 0,1 0,2 1,0 1,1 1,2 2,0 2,1 2,2 3,0 3,1 3,2
  • 28. ARRAYS & Matrices SK Ahsan Two-D array Intialization The two-D array can also be initialized at the time of declaration. Initialization is performed by assigning the initial values in braces seperated by commas. Some important points : o The elements of each row are enclosed within braces and seperated by comma. o All rows are enclosed within braces. o For number arrays, if all elements are not specified , the un specified elements are initialized by zero.
  • 29. ARRAYS & Matrices SK Ahsan Two-D array Intialization Syntax: int arr[4][3]={ {12,5,22}, {95,3,41}, {77,6,53}, {84,59,62} } 12 5 22 95 3 41 77 6 53 84 59 62 Column indexes Row indexes 0 2 1 3 10 2
  • 30. ARRAYS & Matrices SK Ahsan Case Study: Computing Mean, Median and Mode Using Arrays ■ Mean – Average (sum/number of elements) ■ Median – Number in middle of sorted list – 1, 2, 3, 4, 5 (3 is median) – If even number of elements, take average of middle two ■ Mode – Number that occurs most often – 1, 1, 1, 2, 3, 3, 4, 5 (1 is mode)
  • 31. ARRAYS & Matrices SK Ahsan Case Study ■Find Set Properties –Set Union –Set Differences