问题标签 [multiway-tree]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
7325 浏览

tree - 在 b+ 树中拆分一个节点

我试图弄清楚当节点溢出时到底会发生什么。信息:在我的 b+ 树中,每个块有 4 个指针和 3 个数据部分。问题:我知道当发生溢出时,在我的情况下,我们分成 2 个节点,每个节点有 2 个键,并将父节点插入中间值,而不从子节点中删除(与 b 树不同)。

但是我遇到了这样的情况:

我想先插入密钥 23 我拆分 |21|22|25| 进入:|21|22|-| 和 |23|25|-| 现在我需要将密钥 23 插入到父 |21|30|50| 女巫导致另一个分裂。|21|23|-| 和 |30|50|-| 但是 30 之前的指针指向哪里?这个指针和 23 之后的指针是否都指向 |23|25|-| ?

0 投票
1 回答
18044 浏览

python - 在 Python 中绘制和渲染多路树

有人知道我如何以美学上合理的方式绘制多路树吗?信息:

  • 或多或少 100 个项目
  • 每个级别都有大约相同数量的项目
  • 10级
  • 每个节点有 0(叶)到 6 个子节点
  • 每个节点都指定它自己的级别,不管他的根。

我目前正在使用 PIL,将每个“线”划分为img.size()[0]/ 节点数,并用画线draw.line来表示边缘,但它完全搞砸了

我希望你能帮助我=],我会发布任何需要的信息。

0 投票
2 回答
2279 浏览

data-structures - M路搜索树

我想实现一个 m 路搜索树,我需要实现 m 路搜索树的基础知识。任何人都可以为我提供好的资源来帮助我实施同样的事情吗?

0 投票
2 回答
516 浏览

algorithm - 如何表示要用于 DFS/BFS 的数据

我被分配了一个要使用各种搜索技术解决的问题。该问题与逃离 Zurg问题或Bridge and Torch问题非常相似。我的问题是我不知道如何将数据表示为一棵树。

这是我对如何做到这一点的猜测,但它对搜索没有多大意义。

图形

另一种方法是使用按步行时间排序的二叉树。但是,我仍然不确定我是否正确地解决了这个问题,因为搜索算法不一定需要二叉树。

任何有关表示此数据的提示将不胜感激。

0 投票
2 回答
1027 浏览

java - 多路树可比接口问题

我正在创建一个通用的多路树,我知道它只会采用四种类型(整数、双精度、字符串和字符)中的一种。我在使用可比较的界面和插入功能时遇到问题。这是我到目前为止编写的相关代码:

这是我的控制台输出:

我不明白我在可比较接口上做错了什么,使它抱怨 compareTo 方法。另外,我想知道如果使用字符串类型会做什么?我认为它只会按字母顺序查看哪个先出现。谢谢 :)

0 投票
3 回答
731 浏览

php - 使用单个 mysql 查询检查孩子是否是后代

假设我有这张桌子

我想检查 6 是否是 1 的后代(它是)....我可以在一个查询中完成此操作,还是我必须不可避免地获取所有数据并使用 PHP 处理它们?

0 投票
6 回答
1424 浏览

algorithm - 图中的最小破坏成本

我们得到一个图 G(V,E),它有 N 个节点(编号从 0 到 N-1)和正好 (N-1)个双向边

图中的每条边都有一个正成本 C(u,v)(边权重)。

整个图是这样的,在任何一对 Nodes 之间都有一条唯一的路径

我们还给出了一个节点号列表L,炸弹放置在该列表 L 上。

我们的目标是从图中损坏/移除边缘,这样,在从图中损坏/移除边缘之后,炸弹之间就没有联系了——

也就是破坏后,任意两颗炸弹之间都没有路径

损坏 Edge(u,v) = Edge weight(u,v)成本

因此,我们必须破坏这些边缘,以使总破坏成本最小

例子:

在此处输入图像描述

我做了什么?

直到现在,我还没有找到任何有效的方法:(。

此外,由于节点N的数量是 ,边的数量是准确N-1的,并且整个图是这样的,任何一对节点之间都存在唯一路径,我得出的结论是该图是一个TREE

我试图修改 Kruskal 算法,但这也对我没有帮助。

谢谢!

0 投票
2 回答
2317 浏览

c - C实现中的多路树搜索算法

我有一个多路树,每个节点都包含 0-7 个子节点。可以不按特定顺序添加和删除子项。我正在尝试构建一个搜索算法,给定一个 id 将搜索树并返回一个指向特定节点的指针。我已经尝试像上面那样递归地做它,但没有太多运气。实际上可以递归地构建这个算法还是我还需要使用堆栈?

0 投票
1 回答
22838 浏览

data-structures - 一棵树的左孩子右兄弟表示是什么?你为什么要使用它?

许多数据结构使用称为“左孩子,右兄弟”表示的表示将多路树存储为二叉树。这是什么意思?你为什么要使用它?

0 投票
1 回答
499 浏览

algorithm - Making a multiway tree a heap after a node's key has changed?

enter image description here

The tree has invariance that the parent node must always be smaller than its child, like the image shown above. Now suppose some of the node's key has changed and breaks the invariance and I want to maintain the invariance. I think it's basically compare-swap every child of a parent node but I can't figure out how to write the recursion to traverse the tree. It seems different from binary tree I learnt before...

Btw each node has no index but only three pointers: parent, leftChild, rightSibling. If the node is root, its parent point to NULL; if the node is the right most node, its rightSibling points to NULL... Can anyone shed some light on this? Thx in advance!