Code Review

Compare your solutions

    #| BEGIN (Write your solution here) |#
(define (successive-merge leaf-set)
  (cond ((null? leaf-set) (error "empty pair list -- SUCCESSIVE-MERGE"))
        ((null? (cdr leaf-set)) (car leaf-set))
        (else
         (let ((leaf1 (car leaf-set))
               (leaf2 (cadr leaf-set)))
           (successive-merge (adjoin-set (make-code-tree leaf1 leaf2)
                                         (cddr leaf-set)))))))
#| END |#