Ackerman 题目

      已知Ackerman函数A(m,n)可以递归定义为:

      A(m,n)=n+1                                m=0

A(m,n)=A(m-1,1)                         m>0,n=0

A(m,n)=A(m-1,A(m,n-1))              n>0,m>0

下面是一个空间复杂度为O(n)的算法,请填充空白处的代码(每处可填多条语句)
int Ackmermann( int m, int n)
{
int *curVal = new int[n], *lastVal = new int[n];
for (int i = 0; i < n; ++i)
{
____
}
for (int i = 1; i < m; ++i)
{
for (int j = 0; j < n; j++)
{
if( j == 0)
curVal[j] = lastVal[1];
else
{
________
}
}
________
}
return curVal[n-1];
}

posted @ 2012-09-05 15:24  10,000 hours coder  阅读(239)  评论(0编辑  收藏  举报