]> git.rkrishnan.org Git - sicp.git/blob - src/sicp/ex2_66.rkt
solutions to 4.38, 4.39 and 4.40
[sicp.git] / src / sicp / ex2_66.rkt
1 #lang racket
2
3 (define (lookup given-key set-of-records)
4   (if (null? set-of-records)
5       #f
6       (let* ((e (entry set-of-records))
7              (k (key e)))
8         (cond ((equal? given-key k) e)
9               ((< k given-key) (lookup given-key (left-branch set-of-records)))
10               ((> k given-key) (lookup given-key (right-branch set-of-records)))))))
11