我需要评估一个输入数字和二叉树的方案函数,它输出与数字具有相同深度的二叉树中的数据表达式。例如,一棵树的根是 1,子树的根是 2,依此类推。
这是我到目前为止所拥有的,并且我不断收到错误消息Error in null?: expected a list; got '1'.
(这是解决我之前询问过的问题的另一种方法)您能否使用我已经使用过的术语来解释这一点,因为我是方案编程的新手。
谢谢
(define fetch-exp (λ (n bt)
(cond [(not (deep-enough? n bt)) ▽#f]
[(one? n) (root bt)]
[(deep-enough? n (left-tree bt))
(fetch-exp (left-tree bt) (sub1 n))]
[(deep-enough? n (right-tree bt))
(fetch-exp (right-tree bt) sub1 n)]
[else ▽#f])))
(define deep-enough?
(λ (n bt)
(cond [(> (tree-depth bt) n) ▽#t]
[(equal? (tree-depth bt) n) ▽#t]
[else ▽#f])))