问题标签 [tree-traversal]

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 投票
4 回答
948 浏览

algorithm - 这个递归算法的大 O

我做了以下涉及二进制堆结构的算法:

该算法所做的基本上是遍历给定其根的二叉堆,以查找并存储保存最小值(即与根的值匹配的值)的节点。

现在,我无法以大 O 表示法计算算法的运行时间。我感到困惑的原因是因为用于遍历每个节点的左右子节点的递归。

所有操作都在恒定时间内运行O(1),除了concat。但是我该如何计算这种递归解决方案的运行时间呢?

0 投票
5 回答
125084 浏览

jquery - jQuery找到最近的同级同级

这是我可以使用的粗略 HTML:

我需要从 遍历.current_sub,找到最接近的前一个.par_cat并对其进行处理。

.find("li.par_cat")返回整个负载.par_cat(我在页面上有大约 30 个)。我需要瞄准单一的。

0 投票
5 回答
4096 浏览

algorithm - N-ary 树 - 它是否对称

给定一棵 N 叉树,找出它是否关于通过树的根节点绘制的线对称。在二叉树的情况下很容易做到这一点。但是对于 N 叉树来说,这似乎很困难

0 投票
1 回答
652 浏览

tree - 二叉树遍历抽象

我试图向非计算机科学专业的学生解释很多问题。

(1)什么遍历树?它只是逻辑还是实际的开关会在电路板上产生 1 和 0?这棵树和节点之间的 CPU/内存在哪里?

(2)如果是 1s 和 0s 电路如何理解这一行,例如 p=p.getLeft();

我说搜索谷歌或维基。

0 投票
19 回答
108433 浏览

javascript - 如何从 jQuery 对象中获取选择器

有没有一种简单的方法可以从中获取选择器$(this)?有一种方法可以通过它的选择器来选择一个元素,但是从 element 获取选择器呢?

0 投票
1 回答
414 浏览

generics - 列出 SYB 或 uniplate haskell 中的搜索

我一直在使用 uniplate 和 SYB,我正在尝试转换一个列表

例如

例如,我想遍历我的树并将一个值附加到所有 [DataB]

所以我的第一个想法是这样做:

或者如果我使用的是单板

问题是我只想搜索完整列表。执行这些搜索中的任何一个都会导致搜索完整列表和所有子列表(包括空列表)

另一个问题是 [DataB] 中的值可能会生成 [DataB],所以我不知道这是否与不在字符串中搜索字符的解决方案相同。

我可以在 DataA1 和 DataB3 上进行模式匹配,但在我的实际应用程序中有一堆 [DataB]。父母的模式匹配将是广泛的。

我的另一个想法是创建一个

并用它来改造。这似乎有点蹩脚,必须有更好的解决方案。

更新:我需要这样做的主要原因是我需要

  1. 更改 [DataB] 的顺序
  2. 添加一些东西到 [DataB]

所以如果你们都知道一个很酷的方法来创建一个匹配的 mkT

B1:B2:B3:B4:[] (也就是说 [DataB] 的完整列表

并不是

B2:B3:B4:[]
或任何其他派生词。

我倾向于咬紧牙关创建“DataBs”、数据类型并对其进行简单的 mkT 匹配。

0 投票
1 回答
566 浏览

jquery - jquery Tree Traversal prev() 问题

我喜欢单击一个标签并选中前面的复选框。我已经尝试了下一个代码,但这不起作用。我已经尝试了 2 个小时,但我错过了什么?

谁能帮我解决这个问题?非常感谢!

ps 我知道我可以用标签轻松解决这个<label for="">问题,但这不是问题。

0 投票
2 回答
1053 浏览

c++ - 关于遍历二叉树的C++设计问题

我有一个二叉树 T,我想将它复制到另一棵树。

假设我有一个在每个节点都被评估的访问方法:

我有一个访问者算法

我有两个问题:

  1. 我决定使用基于函子的方法,因为我看到提升图可以做到这一点(顶点访问者)。此外,我倾向于重复相同的代码来遍历树并在每个节点上做不同的事情。这是摆脱重复代码的好设计吗?还有哪些其他替代设计?
  2. 如何使用它从现有的二叉树创建新的二叉树?如果我愿意,我可以在访问函子上保留一个堆栈,但它与访问者中的算法相关联。
  3. 我将如何在这里合并后序遍历?另一个函子类?
0 投票
6 回答
2503 浏览

tree - 我可以在没有递归和堆栈的情况下对二叉树进行顺序遍历吗?

谁能给我一个解决方案,在不递归和不使用堆栈的情况下按顺序遍历二叉树?

0 投票
4 回答
2299 浏览

algorithm - 如何修改前序树遍历算法以处理具有多个父节点的节点?

我一直在寻找一段时间,似乎无法找到替代解决方案。如果可能的话,我需要以这样一种方式树遍历算法,即一个节点可以有多个父节点(在此处找到一篇很棒的文章:在数据库中存储分层数据)。有没有什么算法可以让我们从一个根节点开始,确定节点的顺序和依赖关系(目前读拓扑排序)?