Arrays and Strings
Arrays and Strings
Accident Problem
Each year the Department of Traffic Accidents
receives accident count reports from a
number of cities and towns across the
country. Given details of ‘n’ days, develop an
algorithm and write a program to determine
the average number of accidents and for each
day, print the difference between the number
of accidents on that day and average. For
example, if the number of accidents is 5 and
the values are 10, 12, 15, 13, 5 then average is
11 and the difference of values are 1, 1, 4, 2, 6
Accident problem
Initializing Arrays
double balance[] = {1000.0, 2.0, 3.4, 7.0, 50.0};
(or)
double balance[5] = {1000.0, 2.0, 3.4, 7.0, 50.0};
Difference between Initialization and
Assignment
• Assignment
• int a;
• a = 5;
Intialization
• int a = 5;
Cannot assign one array to other
int ia[] = {0, 1, 2}; // ok: array of ints
int ia2[] = ia; // error: cannot initialize one array
with another
int main()
{
const unsigned array_size = 3;
int ia3[array_size];
// ok: but elements are uninitialized!
ia3 = ia; // error: cannot assign one array to
another
return 0;
}
Compare List and Arrays
List Arrays
Can have mixed type of elements Can have only one type
of element
Number of elements in list need Size has to be specified
not be specified during declaration
L = [] int a[10];
Elements are accessed by Same way
subscript operator L[0], L[1]... a[0], a[1], a[2],...
Size is dynamic, increases when Size is static
elements are added and decreases
when removed
Have predefined functions such as No such functions
len, count, index etc
Huffman Coding Problem
Huffman code is a particular type of
optimal prefix code for characters. It is commonly
used for lossless data compression. It is
a variable-length code derived from frequency of
occurrence. Given a string develop an algorithm
and write a C program to determine frequency of
occurrence of each character in the string.
Huffman Coding problem