4、连乘积的计算次序已完全确定,也就是说该连乘积已完全加括号,则我们可以通过反复调用两个矩阵相乘的标准算法计算出矩阵连乘积。1.分析最优解的结构为了方便起见,我们将矩阵连乘AiAi+1。。。Aj记为A[i:j]。经分析,计算A[1:n]的一个最优次序所包含的计算矩阵子链A[1:k]和A[k:n]的次序也是最优的。因此,矩阵连乘计算次序问题的最优解包含着子问题的最优解。2.建立递归关系用矩阵m[n][n]来存放A[i:j]相乘的计算次数,用p[n+1]用来存放矩阵的行数和列数。const int N=5
5、; int m[N][N]; //m[i][j]存储Ai到Aj的最小乘法次数 int s[N][N];//s[i][j]存储Ai到Aj之间加括号的位置 int RecurMatrixChain(int P[],int i,int j) { m[i][j]=; s[i][j]=i; if(i==j) m[i][j]=0; else{ for(int k=i;k