Presentation 1 on algorithm for lab progress

manjudarshan8543 11 views 23 slides Mar 03, 2025
Slide 1
Slide 1 of 23
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23

About This Presentation

Algorithm


Slide Content

As an example, the following algorithm finds and returns the maximum of n given numbers: 1 Algorithm Max(A, n) 2 // A is an array of size n. 3 { 4 Result:=A[l]; 5 for i :=2 to n do 6 if A[i] >Result then Result:= A[i]; 7 return Result; 8 } In this algorithm(named Max), A and n are procedure parameters. Result and i are localvariables .

Recursive Algorithms A recursive function is a function that is defined in terms of itself. Similarly, an algorithm is said to be recursive if the same algorithm is invoked in the body. An algorithm that calls itself is direct recursive. Algorithm A is said to Be indirect recursive if it calls another algorithm which in turn calls A.

Home work

Performance Analysis Performance evaluation can be loosely divided into two major phases : a priori estimates and (2) a posteriori testing . We refer to these as performance analysis and performance measurement respectively.

The space needed by each of these algorithms is seen to be the sum of the following components :

Time Complexity The time T(P) taken by a program P is the sum of the compile time and the run (or execution)time. The compile time does not depend on the instance characteristics. Also, we may assume that a compiled program will be run several times without recompilation. We concern ourselves with just the run time of a program . This run time is denoted by t p (instance characteristics )

If we knew the characteristics of the compiler to be used , we could proceed to determine the number of additions , subtractions, multiplications, divisions,compares , loads, stores, and soon, that would be made by the code for P. So , we could obtain an expression for tp (n) of the form,

A program step is loosely defined as a syntactically or semantically meaningful segment of a program that has an execution time that is independent of the instance characteristics For example, the entire statement of Algorithm 1 could be regarded as a step since its execution time is Independent of the instance characteristics

We can determine the number of steps needed by a program to solve a particular problem instance in one of two ways. In the first method , we introduce a new variable , count , into the program . This is a global variable with initial value 0. Statements to increment count by the appropriate amount are introduced into the program . This is done so that each time a statement in the original program is executed, count is incremented by the Step count of that statement.

These recursive formulas are referred to as recurrence relations. One way of solving any such recurrence relation is to make repeated substitutions for each occurrence of the function t rsum on the right-hand side until all such occurrences disappear:

The second method to determine the step count of an algorithm is to build a table in which we list the total number of steps contributed by each statement. This figure is often arrived at by first determining the number of steps per execution(s/e ) of the statement and the total number of times(i.e ., frequency)each statement is executed . The s/e of a statement is the amount by which the count changes as a result of the execution of that statement. By combining these two quantities, the total contribution of each statement is obtained . By adding the contributions of all statements , the step count for the entire algorithm is obtained

Home Work-Matrix Addition
Tags