国内最全IT社区平台 联系我们 | 收藏本站
华晨云阿里云优惠2
您当前位置:首页 > php开源 > php教程 > 【SICP练习】93 练习2.66

【SICP练习】93 练习2.66

来源:程序员人生   发布时间:2015-03-20 08:42:51 阅读次数:2746次

练习2.66

这道题相当于2叉树在实际工程中的1个应用,我们照旧要用到前面所学到的3个进程:entry, left-branch, right-branch。这3者的作用分别是取出结点、左分支、右分支。而根据题目要求,这里还需要1个获得键值的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)))))))
生活不易,码农辛苦
如果您觉得本网站对您的学习有所帮助,可以手机扫描二维码进行捐赠
程序员人生
------分隔线----------------------------
分享到:
------分隔线----------------------------
关闭
程序员人生