(define (merge list1 list2) (cond ((null? list1) list2) ((null? list2) list1) ((< (car list1)(car list2)) (cons (car list1)(merge (cdr list1) list2))) (#t (cons (car list2)(merge list1 (cdr list2)))))) ; merge sort (define (sort lst) (cond ((null? lst) lst) (else (merge (list (car lst)) (sort (cdr lst)))))) (sort (list 4 3 2 1))