2010-08-21から1日間の記事一覧

SICP 問題2.67(語頭符号の復号化処理)

お〜っし、久々の問題ゾーンです。 問題 符号化木と例題の通信文を定義する。 (define sample-tree (make-code-tree (make-leaf 'A 4) (make-code-tree (make-leaf 'B 2) (make-code-tree (make-leaf 'D 1) (make-leaf 'C 1))))) (define sample-message '(0…

SICP §2.3.4(Haffman 符号化木 その5 [重み付き要素の集合])

う〜ん、このセクション何を言いたいのかいまいち確信が持てない。。 とりあえずコードを写経してコメントを付加していってみよう。 (define (adjoin-set x set) (cond (;母体となるリストが空なら新規生成する。 (null? set) (list x)) (;「挿入したい枝の…

SICP §2.3.4(Haffman 符号化木 その4 [復号化手続き])

昨日は会社のキックオフ会で帰宅が遅くなってしまったのでアップできなんだ。。では前エントリを元に、「語頭符号」のコードをどうやって「復号化」するかを考えていこう。 (define (decode bits tree) (define (decode-1 bits current-branch) (if (null? b…