Skip to content

Commit e70f92b

Browse files
authored
Create MatrixChainMultiplication.cpp
1 parent 0ebc31f commit e70f92b

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
#include <bits/stdc++.h>
2+
using namespace std;
3+
4+
int MatrixChainOrder(int p[], int i, int j)
5+
{
6+
if (i == j)
7+
return 0;
8+
int k;
9+
int min = INT_MAX;
10+
int count;
11+
for (k = i; k < j; k++)
12+
{
13+
count = MatrixChainOrder(p, i, k)
14+
+ MatrixChainOrder(p, k + 1, j)
15+
+ p[i - 1] * p[k] * p[j];
16+
17+
if (count < min)
18+
min = count;
19+
}
20+
21+
return min;
22+
}
23+
24+
int main()
25+
{
26+
int arr[] = { 1, 2, 3, 4, 3 };
27+
int n = sizeof(arr) / sizeof(arr[0]);
28+
29+
cout << "Minimum number of multiplications is "
30+
<< MatrixChainOrder(arr, 1, n - 1);
31+
}

0 commit comments

Comments
 (0)