我一直喜欢树木,它们很好,O(n*log(n))而且它们整洁.然而,我所知道的每一位软件工程师都有针对性地问我为什么会使用TreeSet.从CS背景来看,我认为你所使用的并不重要,而且我不想乱用哈希函数和桶(在这种情况下Java).
在这情况下,我应该使用HashSet过TreeSet?
是否有人知道Java的通用树(节点可能有多个子节点)实现?它应该来自一个值得信赖的来源,必须经过全面测试.
它本身似乎没有正确实现它.几乎让我想起我的大学时代,我们应该自己写完所有藏品.
编辑:在java.net上找到这个项目,可能值得研究.
我想在java中实现一个图形数据结构来维护一个对象图.我该怎么做到这一点?有一个随时可用的图书馆可以提供帮助吗?
我正在用Java建模一个电源子系统.一个简单的SQLite数据库包含一组线路可替换单元(LRU)以及它们之间的连接.我正在编写一个Power Model API来简化数据存储的查询,使用DDD模式和存储库.
我正在寻找一个合适的Java集合来建模查询结果.LRU连接流中有一些特殊情况需要建模:
包含上面的#3使我开始考虑从API返回查询结果作为树.但是我在java.util中找到的唯一一棵树是一个TreeMap键值配对的红黑树,这似乎不合适(或者我想不出用它来建模电源流的适当抽象.)I我也一直在考虑使用LinkedHashSet,但我不相信它也适合.我不清楚这个结构中的节点如何指向下游节点.
在这一点上,我并不关心时间和空间的效率.我的API必须通过向外部客户端(即基于Java的电源监视和控制应用程序的表示层)提供电源连接信息来工作.对开源数据类型/库的使用也没有限制.
在一般的计算机科学术语中,我真正寻求的是有向无环图(DAG).
是否有针对Java的实现?我是否认为DAG适合我的情况?