#include<iostream>
n个矩阵连乘问题
原创
©著作权归作者所有:来自51CTO博客作者moqifei的原创作品,请联系作者获取转载授权,否则将追究法律责任
using namespace std;
int m[100][100];
int r[101];
int matrix(int i, int j)
{
int u,k,t;
if(m[i][j]>=0)
return m[i][j];
if(i==j)
return 0;
if(i==(j-1))
{
m[i][j]=r[i]*r[i+1]*r[i+2];
return m[i][j];
}
u=matrix(i,i)+matrix(i+1,j)+r[i]*r[i+1]*r[j+1];
for(k=i+1;k<j;k++)
{
t=matrix(i,k)+matrix(k+1,j)+r[i]*r[k+1]*r[j+1];
if(t<u)
u=t;
}
m[i][j] = u;
return u;
}
int main()
{
int n;
cout<<"请输入矩阵数目:"<<endl;
cin>>n;
int i,j;
cout<<"请输入"<<n+1<<"个矩阵系数"<<endl;
for(i=1;i<=n+1;i++)
cin>>r[i];
for(i=1;i<=n+1;i++)
for(j=1;j<=n+1;j++)
m[i][j]=-1;
cout<<"最少乘法运算次数为:"<<matrix(1,n)<<endl;
return 0;
}
上一篇:幻方
![](https://ucenter.51cto.com/images/noavatar_middle.gif)
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
矩阵连乘问题-动态规划
...
动态规划 矩阵连乘 百度 c++ -
矩阵连乘问题(动态规划)
给定n个矩阵{A1,A2,…,An},其中Ai与Ai+1是可乘的,i=1,2 ,…,n-1。如何确定计算矩阵连乘积的计算次
矩阵连乘 动态规划 for循环 i++ -
动态规划 - 矩阵连乘问题
javascript -
矩阵连乘问题
1 问题描述 2 问题解决 2.1 子问题提取和描述 m[i, j],下标
#include 矩阵相乘 ios 递推关系