1.问题
[描述算法问题,首选形式化方式(数学语言),其次才是非形式化方式(日常语言)]
矩阵链乘法,特别要求举例时采用不同于讲义的数据进行推导。
2.解析
3.设计
[核心伪代码]
matrix(p,i,j) {
if i == j
m[i,j] = 0
retrun m[i,j]
m[i,j] = 999999999999
for k = i to j - 1
temp = matrix(p,i,k) + matrix(p,k+1,j) + p[i-1]p[k]p[j]
if temp < m[i,j]
m[i,j] = temp
return m[i,j]
}
4.分析
[算法复杂度推导]
主体为三重嵌套循环,时间复杂度为O(n^3)
5.源码
[github源码地址]
https://github.com/RyokoJiang/homework/blob/main/Suanfa_8.cpp