|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
java.lang.Objectnet.wasamon.mjlib.util.Huffman
public class Huffman
ハフマン符号のエンコード/デコードを行う
入れ子のクラスの概要 | |
---|---|
(package private) class |
Huffman.Code
|
(package private) class |
Huffman.CodeTable
|
(package private) class |
Huffman.Node
unit単位毎のデータとその出現回数を保持するクラス ハフマン木の単位となる |
(package private) class |
Huffman.NodeArrayList
パターンの集合を保持するクラス |
フィールドの概要 | |
---|---|
private int |
originaldata
元のデータの大きさ |
private Huffman.Node |
root
ハフマン木のルートとなるノードを保持 |
private Huffman.CodeTable |
table
変換テーブル |
private int |
wordunit
与えるデータの単位(何バイトを一つの単語としてみるか) |
コンストラクタの概要 | |
---|---|
Huffman(int unit)
Huffman符号を構成するコンストラクタ |
メソッドの概要 | |
---|---|
void |
decode()
デコードを行う |
java.lang.String |
encode(byte[] data)
エンコードを行う |
private Huffman.NodeArrayList |
getRepetition(byte[] data)
|
static void |
main(java.lang.String[] args)
ハフマン符号を用いたテストを行う. |
private Huffman.Node |
makeHuffmanTree(Huffman.NodeArrayList ptn)
ハフマン木をつくる |
private void |
maketable(Huffman.Node root)
|
private void |
maketable(Huffman.Node root,
java.lang.String code)
|
void |
print()
生成されたハフマン符号のコードを表示する |
private Huffman.NodeArrayList |
sort(Huffman.NodeArrayList ptn)
与えられたパターンリストを出現頻度で降順にソートする とりあえず,単純なソート |
クラス java.lang.Object から継承されたメソッド |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
フィールドの詳細 |
---|
private int wordunit
private Huffman.Node root
private int originaldata
private Huffman.CodeTable table
コンストラクタの詳細 |
---|
public Huffman(int unit)
unit
- データの単位(unit*8bit)ずつパーズするメソッドの詳細 |
---|
private Huffman.NodeArrayList getRepetition(byte[] data)
private Huffman.NodeArrayList sort(Huffman.NodeArrayList ptn)
ptn
- NodeArrayList
private Huffman.Node makeHuffmanTree(Huffman.NodeArrayList ptn)
ptn_orig
- 出現頻度とそのデータのパターンの集合
public java.lang.String encode(byte[] data) throws HuffmanException
data
- 入力データの列
HuffmanException
private void maketable(Huffman.Node root)
private void maketable(Huffman.Node root, java.lang.String code)
public void decode()
public void print()
public static void main(java.lang.String[] args) throws HuffmanException
HuffmanException
|
||||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |