我想编写一个函数来使用尾递归查找 C(n,k),非常感谢您的帮助。
我已经达到了这个:
(defun tail-recursive-binomial (n k)
(cond ((or (< n k) (< k 0)) NIL)
((or (= k 0) (= n k)) 1)
(T (* (tail-recursive-binomial (- n 1) (- k 1)) (/ n k)))))
使用二项式系数的以下性质。
但我不知道如何使递归调用成为每个实例执行的最后一条指令,因为最后一条是产品。我一直在尝试使用辅助功能,我认为这是唯一的方法,但我还没有找到解决方案。