α符号やKZ符号等は可変長であるが・・・
自然数しか表現できない・・・^^; そこで整数は自然数に変換しなければならない 固定長であれば負の数は2の補数で表現され・・・ 最上位ビットが1である・・・ 可変長の場合は・・・??? 絶対値を2倍し(左シフト)・・・ 自然数以外なら1を加算する・・・ つまり最下位ビットを1にする 整数:自然数 -3:7 -2:5 -1:3 0:1 1:2 2:4 3:6 逆変換は最下位ビットが1であれば・・・ 2分の1(右シフト)して(-1)倍・・・ 最下位ビットが0であれば右シフトのみで良い^^ これで整数を自然数に変換できた^^ PR |
![]() |
![]() |
Set の toArray には
Object[] toArray() と Set String[] str = set.toArray(); とすると型の互換性が・・・^^; String[] str = (String[])set.toArray(); とキャストすると・・・ コンパイルできるものの動かない・・・TT static でもないし引数はなんだ~~~ Javaのサイトに行くと・・・ Java SE 6 ドキュメント (英語版)・・・って 日本語のページに行ったのに・・・;; あっ 例が載ってた・・・えいごで・・・^^; String[] str = set.toArray(new String[0]); って書けばいいんだ^^ |
![]() |
![]() |
LZSS符号はLZ77符号を改良したものである。
1982年にStorerとSzymanskiによって考案された。 符号化は・・・ 辞書に登録されている場合は1を出力し 続いて開始位置と一致長を出力する。 辞書の最後に一致した文字列を追加する。 辞書に登録されていない場合は0を出力し 続いて文字を出力する。 辞書の最後に出力した文字を追加する。 復号化は・・・ 最初に1ビット読み込み 0だった場合、続く1文字を読み込み出力する。 辞書の最後に出力した文字を追加する。 1だった場合、続いて開始位置と一致長を読み込む 辞書から一致長分の文字列を出力する。 辞書の最後に出力した文字列を追加する。 辞書サイズが大きくすると開始位置を表す記号も大きくなるため 辞書サイズが大きくなるほど圧縮率が良くなるという訳ではない。 また一致長が1だった場合(1,開始位置,一致長)と出力するより (0,文字)と出力した方が圧縮率が良くなる。 さらに一致長が3以下の場合は辞書に登録されていないとみなした場合 つまり(0,文字)(0,文字)(0,文字)のように出力するとした場合 3以下の一致長は現れないため 一致長を符号化時は(一致長 - 3) 復号化時は(一致長 + 3)のように表せる。 要するに最大一致長を増やすことができる。 最大一致長を変えない場合でも、より小さな値で一致長を表現できる。 |
![]() |
![]() |
いなばうぁ~ すごいね・・・っと言われ
いないいないばぁ~ だと思っていたが・・・^^; 2006年総集編で荒川選手のVTRが・・・ スケートのイナバウワー選手が最初に演技した 仰け反った姿勢のことだったのね・・・^^; 抱っこの時なんか仰け反ると・・・ あっ 下から白いものが顔出してる・・・^^ 歯が一本みえてきたぁ~~~^^ |
![]() |
![]() |
クリスマスツリーが彼方此方で点灯しはじめ・・・
お店でもクリスマスプレゼント用の品々が・・・ 買い物について来た息子たち・・・ カブトの変身ベルトを発見・・・^^; ・・・ てこでも動かないよぅ・・・;; 買い物籠の中に入れることに・・・^^; 家に帰ったら早速遊び始めることに・・・^^ クリスマスまでもつだろうか??? ・・・ あ~~~っカブトの角が~~~・・・TT |
![]() |
![]() |
忍者ブログ [PR] |