Professional Documents
Culture Documents
Analysis AND Design OF Algorithms
Analysis AND Design OF Algorithms
150110107032 1
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 2
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 3
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 4
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 5
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 6
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 7
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 8
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 9
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 10
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 11
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 12
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 13
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 14
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 15
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 16
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 17
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 18
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 19
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 20
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 21
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 22
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
Practical : 4
Aim : Implementation and Time analysis of factorial program using
iterative and recursive method.
Source code :
#include<stdio.h>
#include<iostream>
#include<time.h>
#include<math.h>
#include<stdlib.h>
int main()
int b[12]={8,17,26,35,44,53,62,71,88,107,116,2222};
int i,j,k,n;
int a[100000];
cout<<"=======================================================
=========="<<endl;
150110107032 23
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
cout<<"\t\t\tFactorial"<<endl;
cout<<"=======================================================
=========="<<endl;
cout<<"VALUES\t\tRECURSIVE METHOD\t\tITERATIVE
METHOD"<<endl<<endl;
cout<<"=======================================================
=========="<<endl;
for(i=0;i<12;i++)
int x=b[i];
cout<<x<<"\t\t\t"<<recursive(x)<<"\t\t\t\t"<<iterative(x)<<endl;
cout<<"=======================================================
=========="<<endl;
clock_t t1,t2;
long int i;
t1=clock();
i=fact(x);
t2=clock();
return((long double)(t2-t1)/CLK_TCK);
clock_t t1,t2;
150110107032 24
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
t1=clock();
for(int i=x;i>=1;i--)
temp=temp*i;
t2=clock();
return((long double)(t2-t1)/CLK_TCK);
if(x==1)
return 1;
else
return(x*recursive(x-1));
Output: -
150110107032 25
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
Practical : 5
Aim : Implementation of a knapsack problem using dynamic problem.
Source code :
#include<stdio.h>
#include<conio.h>
#define MAX 20
void knapsackDP(int,int);
int max(int,int);
void backtracking();
int weight[MAX],value[MAX],W,no,*x;
int v[MAX][MAX];
void main()
int i,j;
scanf("%d",&no);
150110107032 26
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
for(i=1;i<=no;i++)
scanf("%d %d",&weight[i],&value[i]);
scanf("%d",&W);
knapsackDP(no,W);
backtracking();
int i,j;
for(i=0;i<= W ;i++)
v[0][i]=0;
for(i=0;i<= no;i++)
v[i][0]=0;
for(i=1;i<= no;i++)
for(j=1;j<= W;j++)
if((j-weight[i])< 0)
150110107032 27
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
v[i][j]=v[i-1][j];
else
v[i][j]=max(v[i-1][j],v[i-1][j-weight[i]]+value[i]);
printf("\n \t ");
for(i=0;i<= W;i++)
printf("%2d ",i);
printf("\n--------------------------------------------------------------------------------------------
------------------------------------");
for(i=0;i<=no;i++)
for(j=0;j<= W;j++)
printf("%2d ",v[i][j]);
printf("\n-----------------------------------------------------------------------------------
---------------------------------------------");
printf("\n-----------------------------------------------------------------------------------
---------------------------------------------");
return (a >b)?a:b;
150110107032 28
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
void backtracking()
int j1,i;
j1=W;
printf("\n--------------------------------------------------");
for(i=no;i >=0;i--)
j1=j1-weight[i];
Output: -
150110107032 29
[ANALY SIS AND DESIGN O F ALGO RITH MS ] 2150703
150110107032 30