Java实现哈夫曼树的构造2011-06-12 csdn博客 YidingHe哈夫曼树的内容这里不作解释,请自己搜索。下面给出哈夫曼树构造过程的 Java 实现。结点类:
1./**2. * 二叉树节点3. */4.public class Node implements Comparable {5.6.private int value;7.8.private Node leftChild;9.10.private Node rightChild;11.12.public Node(int value) {13.this.value = value;14.}15.16.public int getValue() {17.return value;18.}19.20.public void setValue(int value) {21.this.value = value;22.}23.24.public Node getLeftChild() {25.return leftChild;26.}27.28.public void setLeftChild(Node leftChild) {29.this.leftChild = leftChild;30.}31.32.public Node getRightChild() {33.return rightChild;34.}35.36.public void setRightChild(Node rightChild) {37.this.rightChild = rightChild;38.}39.40.public String toString(int level) {41.String indent = "";42.for (int i = 0; i < level; i++) {43.indent += "";44.}45.46.return indent + value + "
" +47.(leftChild != null ? leftChild.toString(level + 1) : "") +48.(rightChild != null ? rightChild.toString(level + 1) : "");49.}50.51.public int compareTo(Object o) {52.Node that = (Node) o;53.double result = this.value - that.value;54.return result > 0 ? 1 : result == 0 ? 0 : -1;55.}56.}