符号化の手順
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2016/09/18 20:42 UTC 版)
元の文字列: cacao 生成された巡回行列: ABCDE1 c a c a o 2 o c a c a 3 a o c a c 4 c a o c a 5 a c a o c ソートされた行列 M {\displaystyle M} : ABCDE5 a c a o c 3 a o c a c 1 c a c a o 4 c a o c a 2 o c a c a 得られたBWT系列: ccoaa, 3 ソートされた5×5行列の第5列(右端のE列)を縦に取ったものと、元の文字列がソートした後に何番目の行にあったかを覚える。
※この「符号化の手順」の解説は、「ブロックソート」の解説の一部です。
「符号化の手順」を含む「ブロックソート」の記事については、「ブロックソート」の概要を参照ください。
符号化の手順
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2017/07/26 08:54 UTC 版)
1以上の整数値に対して 末尾に '0' を付記する もし符号化しようとする数値が 1 であるならば、終了する。そうでなければ、数値のバイナリ表現を手前につける。 今出力した数値の桁数マイナス 1 を、新しく符号化すべき数値として、2. の処理を繰り返す。 数値が 18 のときの例を示す。 まず末尾に 0 が書かれる。 0 続いて、18 をバイナリ表現した 10010 をその前に書き加える(空白は便宜上のもの。以下同様)。 10010 0 この 10010 の桁数が 5 桁なので、5-1=4 として、再帰処理する。4 のバイナリ表現 100 を前に書き加える。 100 10010 0 この 100 の桁数が 3 桁なので、 3-1=2 として、再帰処理する。2 のバイナリ表現 10 を前に書き加える。 10 100 10010 0 この 10 の桁数が 2 桁なので、 2-1=1 として、再帰処理する。そして、1 の場合は終了なので、結果として、 10 100 10010 0 が 18 をオメガ符号で符号化したときの符号語となる。 1 から 17 までの符号語を示す。 1 0 2 10 0 3 11 0 4 10 100 0 5 10 101 0 6 10 110 0 7 10 111 0 8 11 1000 0 9 11 1001 010 11 1010 011 11 1011 012 11 1100 013 11 1101 014 11 1110 015 11 1111 016 10 100 10000 017 10 100 10001 0
※この「符号化の手順」の解説は、「オメガ符号」の解説の一部です。
「符号化の手順」を含む「オメガ符号」の記事については、「オメガ符号」の概要を参照ください。
- 符号化の手順のページへのリンク