Matrix-Chain-Multiply Source-Code
January 26th, 2008
#include
#define MAXArray 9
#define MAXMultiplication 4199999999
int num;
void printout(unsigned long s[][MAXArray],int i,int j)
{
if(i==j)
printf(”A%d”,num++);
else
printf(”(”);
printout (s,i,s[i][j]);
printf(” x “);
printout (s,s[i][j]+1,j);
printf(”)”);
}
}
void matrix_chain_order(int *p,int n)
{
unsigned long m[MAXArray][MAXArray] = {0};
unsigned long s[MAXArray][MAXArray] = {0};
unsigned int q;
int h,j,i,k;
for(h = 2; h <= n ;h++)
{
for(i = 1 ; i <= n - h +1 ; i++)
{
j = i + h -1;
m[i][j] = MAXMultiplication;
for(k=i ; k < j ; k++)
{
q = m[i][k] + m[k+1][j] + p[i-1]*p[k]*p[j];
if(q < m[i][j])
{
m[i][j] = q;
s[i][j] = k;
}
}
}
}
num = 1;
printout (s,1,n);
}
main(void)
{
int n;
int p[MAXArray]={0};
int i;
while(scanf(”%d”,&n),n)
{
for(i=1;i<=n;i++)
scanf(”%d %d”,&p[i-1],&p[i]);
matrix_chain_order(p,n);
putchar(’\n’);
}
return 0;
}
Inlinks :
- Apa itu Algorithms?
- Bubble-sort Source-Code
- Data Security
- Enkripsi RC4 part 2
- Heap-sort Source-Code
- Insertion-sort Source-Code
- Keamanan Informasi dan Kriptografi
- LINEAR DISCRIMINANT ANALYSIS (LDA)
- Matrix-Chain-Multiply Source-Code
- Matrix-Chain-Order
- MD5 and SHA-1 ( Hash Function Chryptography )
- Merge-sort Source-Code
- Quick-sort Source-Code
- Sejarah Kriptografi
- Selection-sort Source-Code
- SORTING ALGORITHM #1
- SORTING ALGORITHM ANALYSIS






