一般地,当某个问题可以用动态规划法求解, 但二维数组中有相当一部分元素在整个计算中都不会被用到。我们就不需要以递推方式逐个计算二维数组中元素, 而采用备忘录方法:
MemorizedMatrixChainMain.c
#include
<
stdio.h
>
#include
<
limits.h
>
#define
LENGTH 6

void
MemorizedMatrixChain(
int
p[],
int
m[][LENGTH],
int
s[][LENGTH]);
int
LookupChain(
int
p[],
int
i,
int
j,
int
m[][LENGTH],
int
s[][LENGTH]);

void
MemorizedMatrixChain(
int
p[],
int
m[][LENGTH],
int
s[][LENGTH])

...
{
int i, j;

for(i = 0; i < LENGTH; i++)
MemorizedMatrixChainMain.c












