kri*_*hna 5 java algorithm graph data-structures
我在reational数据库中有父子映射,如下所示,
relationship_id | parent_id | child_id
1 | 100009 | 600009
2 | 100009 | 600010
3 | 600010 | 100008
Run Code Online (Sandbox Code Playgroud)
对于性能优化,我喜欢将所有这些映射保留在内存中.在这里,孩子将拥有多个父母,而父母则拥有2个以上的孩子.我猜,我应该使用"Graph"数据结构.
填充到内存中是一次性活动.我担心的是,当我要求列出所有孩子(不仅是直系孩子)时,应尽快归还.添加和删除很少发生.我应该使用什么数据结构和算法?
试过MultiHashMap,实现O(1)
搜索时间,但它有更多的冗余.
拥有父子关系的图形数据结构.每个GraphNode都可以有一个ArrayList
孩子.
然后HashMap
将映射ID映射到GraphNode.
你需要找出一些东西,这样你就不会创建一个循环(如果可能的话),这将导致无限循环.