You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
sicp-all-tasks/sicp/2_002e68

20 lines
722 B

Exercise 2.68: The encode procedure takes
as arguments a message and a tree and produces the list of bits that gives the
encoded message.
(define (encode message tree)
(if (null? message)
'()
(append
(encode-symbol (car message)
tree)
(encode (cdr message) tree))))
Encode-symbol is a procedure, which you must write, that returns the
list of bits that encodes a given symbol according to a given tree. You should
design encode-symbol so that it signals an error if the symbol is not in
the tree at all. Test your procedure by encoding the result you obtained in
Exercise 2.67 with the sample tree and seeing whether it is the same as
the original sample message.