问题标签 [subtree]

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 投票
1 回答
87 浏览

binary-tree - 此语句是否为真(用于确定一棵树是否为另一棵树的子树)

我有两个二叉树T1T2,它们都是字符树,这意味着:

如果PreOrder2是 的子串PreOrder1,并且InOrder2是 的子串InOrder1,则T2是 的子树T1

上述说法是否属实?

树相等的定义:如果T1T2具有完全相同的数据值和分布,则T1 == T2,否则T1 != T2(NULL树相等)。

子树的定义:如果其中至少有一个节点,N1则为的子树。T1N1 == T2T2T1

基本上,我不是在谈论节点地址的等价性。我说的是树的数据值和分布。

== 编辑 ==

我认为这不是真的。中可能有两个子树T1,其中一个T2具有与 相同的 PreOrder,另一个具有与 相同的 InOrder T2

现在我的问题变成了:有没有一种简单的方法来确定是否T2T1使用遍历的子树?

== 编辑 ==

使语句为假的典型示例:

T1:

T2:

另一个T1:

0 投票
1 回答
304 浏览

git - 如何解决“git subtree split”在还原提交时失败的问题?

我遇到了这个邮件列表帖子中描述的问题。当还原提交后跟合并提交时,“git subtree split”无法重建历史记录。我稍微调整了 Fabien 在他的邮件列表帖子中提供的测试脚本:

我发现如果还原提交之后是另一个在子树目录中进行更改的提交,则拆分将按预期工作(请参阅上面的“第四版”)。这看起来像 git-subtree 中的错误。

但是,就我而言,当然已经执行了合并,因此我无法通过添加虚拟提交来解决问题。有没有其他方法可以解决这个问题?也许是 git-subtree 源代码的快速修复补丁?

0 投票
2 回答
841 浏览

haskell - Haskell:返回二叉树中所有子树的列表。我的代码正确吗?

所以我试图在 Haskell 中实现一个函数,它接受二叉树并返回所有子树的列表,其中顺序和重复无关紧要,但所有子树必须至少存在一次。这是我的代码:

这是我的数据集

这是我的结果

出于某种原因,我对这个实现有些怀疑,如果有任何反馈,我将不胜感激!谢谢!

0 投票
0 回答
149 浏览

git - git:从子树合并子树并提取更新

我在两个单独的 git 中有两个项目。第二个包含第一个的部分分支:

我设法使用(从此处获得提示)获得了该项目B:

我在两个项目中都有新的提交,但是,我想合并projectB/master:fork-project完成的新工作projectA/master:project

我只是不能重用git read-tree -m --prefix=fork-project/ -u HEAD projectA/master:project(选项-m--prefix=拒绝共存),并且-Xsubtree=fork-project/作为合并策略选项(git merge)试图合并整体projectA/master:*根据 不采用树状作为参数--help)。

0 投票
1 回答
1556 浏览

git - Git合并两个本地分支的子树

为了我的生活,我无法git subtree merge上班。这是我的情况:

我正在开发Moodle的一个内置部分,称为 Workshop。代码位于mod/workshop目录中moodle。我必须将我的本地 Moodle 升级到 2.5 并让我的 Workshop 更改在其中工作。所以,对我来说显而易见的解决方案是:

  1. MOODLE_25_STABLE从上游签出分支
  2. 创建一个MOODLE_25_STABLE_workshop基于该分支调用的分支
  3. mod/workshop从我的MOODLE_23_STABLE_workshop分支合并到MOODLE_25_STABLE_workshop

如果我想将每个文件合并到其中,那将很容易,但我只对重播对目录的提交感兴趣。有没有比完成六个月的提交更简单的方法?因为我真的,真的不想那样做。MOODLE_23_STABLE_workshopMOODLE_25_STABLE_workshopmod/workshopcherry-pick

我已经尝试过的事情:

任何指导表示赞赏。

0 投票
2 回答
5275 浏览

insert - 二叉搜索树方案

我和我的朋友目前正致力于在 Scheme 中创建二叉搜索树。我们无法让它保存我们插入的内容。我的教授说我们要用set-car!(cdr ( 不知何故用于左子树,但我不知道将它放在哪里。我们应该使用 set-car! (cddr ( 也用于右子树。

到目前为止,我们已经正确地完成了所有这些,但我们只需要帮助它保存我们插入的节点。

代码:

0 投票
3 回答
733 浏览

java - 以字符串形式获取树的所有树路径

我现在正在寻找一种方法,它给了我给定树的所有路径。想象一下下面的树:

现在我想将所有路径作为单独的字符串:

  • AB
  • ACDE
  • ACF
  • 股份公司

- - - - - - - -更新 - - - - - - - - -

正如评论中已经提到的,我正在寻找所有的树路径而不是子树。我找到了以下解决方案,但我不确定它是否会是一个好的解决方案:

你怎么看?

0 投票
1 回答
581 浏览

node.js - 计算子树中的节点数

我有一棵树,我必须返回树的副本,每个节点都设置了左子树和右子树中的节点数

在此处输入图像描述

这是树结构

在此处输入图像描述

izq 表示左,der 表示右

0 投票
2 回答
481 浏览

tree - Hbase 和分布式前缀树

我想在许多机器中将大量序列表示和存储为前缀树,如下所示:+主机将表示序列的前缀。+n 个从机将代表 n 个子前缀树,每个子前缀树包含其余的序列。

我想知道我是否可以使用 Hbase 来解决我的问题?你能分享一下这方面的经验吗?

0 投票
1 回答
167 浏览

xml - 在 XSLT 中复制树节点并删除子节点

我试着解释一下,我的英语很差:

我有一个 XML 文件:

然后,我制作了两个模板,它们从 SAT_DI 节点获取每个元素,并在每行中创建一个包含两对名称-值的表:

我需要删除节点: SAT_OTROS_EST_VEC SAT_BONOS_CARB_VEC SAT_COMPENSAC_VEC SAT_ACREDIT_VEC HEADER1 HEADER7 HEADER8

当出现时,但只是为了给桌子上色,因为我稍后会使用它。

你能帮我出主意吗?

谢谢