Questions tagged «tree»

树是一种广泛使用的数据结构,它模拟具有一组链接节点的分层树状结构。

7
在关系数据库中存储分层数据有哪些选择?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅通过编辑此帖子来关注一个问题。 10个月前关闭。 好的概述 一般来说,您需要在快速读取时间(例如,嵌套集)或快速写入时间(邻接列表)之间做出决定。通常,您最终会得到以下最适合您的选项的组合。以下内容提供了一些深入的阅读: 嵌套间隔与邻接列表的另一比较:邻接列表,物化路径,嵌套集和嵌套间隔的最佳比较。 分层数据模型:幻灯片,其中对折衷和示例用法进行了很好的解释 在MySQL中表示层次结构:特别是对嵌套集的很好概述 RDBMS中的分层数据:我见过的最全面,组织最完整的链接集,但解释方式不多 选件 我知道的和一般功能: 邻接表: 列:ID,ParentID 易于实现。 廉价节点移动,插入和删除。 昂贵的查找级别,祖先和后代,路径 通过支持它们的数据库中的公用表表达式避免N + 1 嵌套集(又名修改后的预排序树遍历) 列:左,右 廉价祖先,后裔 O(n/2)由于易失性编码,非常昂贵的移动,插入,删除 桥接表(又名闭包表/ w触发器) 使用单独的联接表,并带有:祖先,后代,深度(可选) 便宜的祖先和后裔 写入O(log n)用于插入,更新,删除的成本(子树的大小) 标准化编码:适合联接中的RDBMS统计和查询计划程序 每个节点需要多行 沿袭列(又名物化路径,路径枚举) 栏:沿袭(例如/ parent / child / grandchild / etc ...) 通过前缀查询的廉价后代(例如LEFT(lineage, #) = '/enumerated/path') 写入O(log n)用于插入,更新,删除的成本(子树的大小) 非关系:依赖于数组数据类型或序列化的字符串格式 嵌套间隔 类似于嵌套集,但具有实数/浮点数/十进制数,因此编码不会不稳定(廉价的移动/插入/删除) …


24
如何在Java中实现树形数据结构?[关闭]
已关闭。这个问题需要更加集中。它当前不接受答案。 想改善这个问题吗?更新问题,使其仅关注一个问题编辑此帖子。 2年前关闭。 是否有标准的Java库类来表示Java中的树? 具体来说,我需要代表以下内容: 任何节点上的子树可以具有任意数量的子代 每个节点(在根之后)及其子节点将具有字符串值 我需要获取给定节点的所有子节点(某种形式的列表或字符串数​​组)及其字符串值(即,将节点作为输入并返回所有子节点的字符串值作为输出的方法) 是否有任何可用的结构或者我需要创建自己的结构(如果这样的话,实施建议会很棒)。

6
无法在终端中显示Git树
Killswitchcollective.com的旧文章(2009年6月30日)具有以下输入和输出 git co master git merge [your_branch] git push upstream A-B-C-D-E A-B-C-D-E-F-G \ ----> \ your branch C-D-E G 我很感兴趣如何在不使用OS / X中的Gitk或Gitx的情况下在终端中获得树状视图的提交。 您如何在终端中获得树状的提交视图?




9
Google Chrome将JSON AJAX响应显示为树而不是纯文本
我找不到这个答案: 我的AJAX调用返回JSON数据。在Google Chrome开发者工具>资源> XHR中,当我单击左侧的资源,然后在“内容”选项卡上时,我看到JSON字符串是字符串,而不是像Firebug和Firebug Lite那样的树。 如何强制Chrome将其像树一样显示。我的PHP文件必须具有Content-type吗? 我很想知道答案! 谢谢斯特凡诺斯
215 ajax  json  google-chrome  view  tree 




18
如何从平面结构有效地构建树?
我有一堆扁平结构的物体。这些对象具有ID和ParentID属性,因此可以排列在树中。它们没有特定的顺序。每个ParentID属性不一定都与ID结构中的匹配。因此,它们可能是从这些对象中出现的几棵树。 您将如何处理这些对象以创建结果树? 我离解决方案并不遥远,但我敢肯定,这远非最佳方案... 我需要创建这些树,然后以正确的顺序将数据插入数据库。 没有循环引用。当ParentID == null或在其他对象中找不到ParentID时,节点是RootNode

7
树数据结构的数据库结构
在数据库中实现可自定义(即级别数未知的树结构)树数据结构的最佳方法是什么? 在使用带有外键的表之前,我已经做过一次。 您还可以看到其他哪些实现?这种实现是否有意义?


29
从JavaScript中的平面数组构建树数组
我有一个复杂的json文件,必须使用javascript处理才能使其具有层次结构,以便稍后构建树。json的每个条目都具有:id:唯一ID,parentId:父节点的id(如果节点是树的根,则为0)level:树中的深度级别 json数据已被“排序”。我的意思是,条目上方将具有父节点或兄弟节点,而其下将具有子节点或兄弟节点。 输入: { "People": [ { "id": "12", "parentId": "0", "text": "Man", "level": "1", "children": null }, { "id": "6", "parentId": "12", "text": "Boy", "level": "2", "children": null }, { "id": "7", "parentId": "12", "text": "Other", "level": "2", "children": null }, { "id": "9", "parentId": "0", "text": "Woman", "level": …
134 javascript  arrays  list  tree 

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.