阿克曼函数(AckMan)

标签:
it校园 |
之前腾讯实习笔试上有这道题,当时要手算出函数值。因为递归步数太多,就放弃了。就从程序实现来说,这个算法很简单实现,递归就可以了。这里搜集了wiki上总结的数学解法。
wiki: http://zh.wikipedia.org/wiki/阿克曼函數
定义
http://upload.wikimedia.org/wikipedia/zh/math/b/f/6/bf69ddd17e4b0e08fd306fc1009229b1.png | 若m=0 |
若m>0且n=0 | |
若m>0且n>0 |
m\n | 0 | 1 | 2 | 3 | 4 | n |
---|---|---|---|---|---|---|
0 | 1 | 2 | 3 | 4 | 5 | http://upload.wikimedia.org/wikipedia/zh/math/4/0/b/40b85027598d87611b1c8d5d11e46812.png |
1 | 2 | 3 | 4 | 5 | 6 | http://upload.wikimedia.org/wikipedia/zh/math/9/c/7/9c79b95bd5c976488be3eb116502d690.png |
2 | 3 | 5 | 7 | 9 | 11 | http://upload.wikimedia.org/wikipedia/zh/math/3/6/1/3616aa9532052a2aa525b8298970032c.png |
3 | 5 | 13 | 29 | 61 | 125 | http://upload.wikimedia.org/wikipedia/zh/math/5/8/5/585aa65ed2bb064938c5a56ba582570e.png |
4 | 13 | 65533 | 265536 − 3 | A(3, 265536 − 3) | A(3, A(4, 3)) | http://upload.wikimedia.org/wikipedia/zh/math/d/0/9/d0997f63338fbc3ea2e8636d899d019d.png |
5 | 65533 | A(4, 65533) | A(4, A(5, 1)) | A(4, A(5, 2)) | A(4, A(5, 3)) | |
6 | A(5, 1) | A(5, A(5, 1)) | A(5, A(6, 1)) | A(5, A(6, 2)) | A(5, A(6, 3)) |