Professional Documents
Culture Documents
By
Dr. Abdelghafar Refat Elshenawy
What is Algorithms ?
Analysis & Design Algorithms
Analysis Algorithms
What to count?
1 2 4
for ( int i = 0; i < 10; i++ ) 1 1 + (11) + 10
{ 3
System.out.println("Advanced Algorithm"); 2 10
} 5
System.out.println("End"); 3 1
F(n) = 1 + 11 +10 + 10 + 1 = 33
2 Example ( Linear or n)
Master Statement
Follower Statement
1 2 4
for ( int i = 0; i < n; i++ ) 1 1 + (n+1) + n
{ 3
System.out.println("Advanced Algorithm"); 2 n
} 5
System.out.println("End"); 3 1
2
F(n) = (2n +2) + (2n+2) * n + n Loop 3n + 2
= 3 n2 + 4 n + 2
4 Example ( Quadratic, cubic function)
Loop 3n + 2
Loop 3 (3n + 2) * n * n
1 2 7
for ( int i = 0; i < n; i++) 1 1 + (n+1) + n
{ 3 4 6
for ( int k = 0 ; k< M; k++) 2 (1 + (M+1) + M) * n
5
println("Advanced Algorithm"); 3 M*n
Minimize to 5 16
32 6 6 32
log 32 2 5
( log 32) + 1 6
2
6 Example ( Log Function)
F(n) = 3 log n + 2
2
7 Example ( Log Function)
N= 8 1 8
for ( int i = n; i > 1; i /=2 )
{ 2 4
System.out.println("Advanced Algorithm");
3 2
} 4 1
Minimize to
8 4
log 8 2 3
( log 8) + 1 4
2
7 Example ( Log Function)
F(n) = 3 log n + 2
2
8 Example ( Log Function)
5 6
9 Example (Arithmetic Progression)
1 2 7
for ( int i = 0; i < n; i++) 1 1 + (n+1) + n
{ 3 4 6
for ( int k = 0 ; k< i; k++) 2 n+?+?
5
println("Advanced Algorithm"); 3 ?
5 6
10 Example (Arithmetic Progression)
Example (Arithmetic Progression)
1 2 6
1 1 + (n+1) + n
for ( int i = 0; i < n; i++)
{ 3 2 n
int k = i; 4
while ( k< i; 3 ?
5 K- -; 3 ?
}
5
By
Dr. Abdelghafar Refat Elshenawy