【SICP练习】93 练习2.66

练习2.66

这道题相当于二叉树在实际工程中的一个运用,我们依旧要用到前面所学到的三个过程:entry, left-branch, right-branch。这三者的作用分别是取出结点、左分支、右分支。而根据题目要求,这里还需要一个获取键值的key。当然了,就像书中上文所展示的那样,key并不需要我们写出来,这里就用到了按愿望思维。

(define (lookup given-key tree-of-records) (if (null? tree-of-records) #f (let ((entry-key (key (entry tree-of-records)))) (cond ((= given-key entry-key) (entry tree-of-records)) ((> given-key entry-key) (lookup given-key (right-branch tree-of-records))) ((< given-key entry-key) (lookup given-key (left-branch tree-of-records)))))))

感谢访问,希望对您有所帮助。 欢迎关注或收藏、评论或点赞。

为使本文得到斧正和提问,转载请注明出处:
http://blog.csdn.net/nomasp

版权声明:本文为 NoMasp柯于旺 原创文章,未经许可严禁转载!欢迎访问我的博客:http://blog.csdn.net/nomasp

你可能感兴趣的:(二叉树,tree,define,entry,键值)