翻訳と辞書
Words near each other
・ 接近流速
・ 接近経路
・ 接近遭遇
・ 接近阻止・領域拒否
・ 接近音
・ 接遇
・ 接遇教育
・ 接道義務
・ 接阻峡温泉駅
・ 接頭
接頭符号
・ 接頭詞
・ 接頭語
・ 接頭辞
・ 接骨
・ 接骨医
・ 接骨師
・ 接骨木
・ 接骨鍼灸院
・ 接骨院


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

接頭符号 : ウィキペディア日本語版
接頭符号[せっとうふごう]
接頭符号()は、語頭属性(prefix property)を満たす符号の事で、通常可変長符号である。主にデータ圧縮に使われる。接頭符号の例として可変長ハフマン符号がある。
日本語では他に語頭符号、英語では ''prefix-free code''、''prefix condition code''、''comma-free code''、''instantaneous code''(日本語では瞬時復号可能符号)などとも呼ばれる。ハフマン符号は接頭符号を生成する数あるアルゴリズムの1つに過ぎないが、ハフマンのアルゴリズムを使わずに生成した接頭符号も「ハフマン符号」と呼ぶことがある。
接頭符号はエントロピー符号の一種で、従って可逆圧縮である。
またクラフトの不等式は、接頭符号として可能な符号語の長さの特性を示している。
== 接頭符号の定義とその意義 ==

符号が語頭属性を満たすとは、任意の符号語が他のいかなる符号語の接頭部にもなっていないという属性である。ここで符号語s_1\ldots s_n接頭部とはあるl \le nを用いてs_1\ldots s_の形にかける語の事である。語頭属性を満たす符号を接頭符号という。
例えば、00、1000、11という符号語からなる符号は、語頭属性を持つが、一方00、1000、10 という符号語からなる符号は語頭属性を持たない。("10" が "1000"の接頭部になっている為)。
語頭属性のない符号を使って複数文字からなる文章を符号化すると、符号語から元の文書を一意に複号できなくなってしまう場合がある。
たとえば文字a,b,cをそれぞれ00, 1000, 10に符号化した場合、「ba」、「caa」のいずれも「100000」に対応してしまう為、符号語「100000」から元の文書を復元するのは不可能になってしまう。
このような符号であっても、語の切れ目にカンマをいれて「1000,00」などとする事で原理的にはもとの文書を特定できるが、この場合カンマ自身もなんらかの方法で数値に符号化する必要がある為、この解決方法は常に簡単というわけではない。
以上のような問題が生じるのは、「1000」がアルファベット「b」の符号語である。にもかかわらず、「1000」の接頭部である「10」が別のアルファベット「a」の符号語であるからである。これが原因で「1000…」ではじまる符号語に対応する文書の最初の文字が「b」であるのか「a」であるのかがわからなくなってしまうのである。
一方接頭符号の場合は、アルファベットの符号語が別のアルファベットの符号語になっている事はないので、このような問題は生じない。
実際、アルファベットの符号語の集合をWとするとき、接頭符号の場合は以下の方法で一意に複号できる。
* 符号語Xを入力として受け取る
* While(X≠空列)
 * Xの接頭部がwになっているようなw∈Wを見つける。
 * wに対応するアルファベットを出力。
 * Xの先頭からwを取り去ったものを新しくXとする。
以上で分かるように、接頭符号の復号計算は、符号語の長さの線形時間である為、効率的である。また復号計算アルゴリズムはオートマトンで記述できるほど単純である。


抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「接頭符号」の詳細全文を読む



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.