0
的遞歸函數我有這樣的程序:方案 - 列出
(define scale-tree
(lambda (tree factor)
(map (lambda (sub-tree)
(if (list? sub-tree)
(scale-tree sub-tree factor)
(* sub-tree factor)))
tree)))
(scale-tree (list 1 (list 2 (list 3 4) 5) (list 6 7))
10)
請問這個代碼工作的?首先,我們把它作爲參數(list 1 (list 2 (list 3 4) 5) (list 6 7))
的整個列表,並在第一次調用中,(lambda (sub-tree)
得到(list 1 (list 2 (list 3 4) 5) (list 6 7))
作爲參數。爲此,我們再次撥打(scale-tree sub-tree factor)
與(list 1 (list 2 (list 3 4) 5) (list 6 7))
。列表何時減少?
謝謝。