用treeNode可以实现
不过数据量大的话,不合适,的自己写,treeNode中是用Vector保存对子节点的引用的,

解决方案 »

  1.   

    no no!在处理大数据量的存储时,Java的Vector和Hashtable都不能是个好的选择,实际上,就连Sun的程序员都承认:数据容器Vector和Hashtable完去可以构成程序中的一颗定时炸弹!!(具体为什么,看看源代码就知道啦,呵呵)实际上,用指针完全可以实现,就象c++里的那样(在Java里,声明一个对象,只要不new,对象名就是一个指针),我倒是有一个平衡二叉树的构造算法,但不是你要要的,呵呵动态大数据量存储时,不要使用Vector和Hashtable,自己构造数据结构吧!
      

  2.   

    class Tree {
        private datatype data;
        private java.util.Vectory SubTree;
        public Tree(datatype Data){
             this.data=Data;
             SubTree=new java.util.Vectory();
        };
        public datatype getData(){
        ...
        }
        public setData(datatype Data){
        ...
        }
        public setSubTree(Tree subTree){
            this.SubTree.addElement(subTree);
        }
        public Tree getSubTree(int index){
            (Tree)(this.SubTree.elementAt(index))
        }
        public int getSubTreeCount(){
            this.SubTree.size();
        }
    }行吗?
      

  3.   

    说句题外话
    你所指的字典应用何意能详细点吗
    另外用数组的话,添加、删除会有许多问题的
    Vector和Hashtable 如果不是极端的问题的话还是建议使用的
    毕竟算法是人家写好的