问题标签 [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 投票
2 回答
4473 浏览

java - 从 inorder 和 preorder 遍历树

可能的重复:
构造一棵树

嗨,我怎样才能用java编写一个程序,以便创建一个具有给定预序和中序的树。我知道用 inorder 遍历树,也知道用 preorder 遍历树,但是我不能从 inorder 和 preorder 一起创建树

0 投票
2 回答
3370 浏览

haskell - Haskell 中的变质和树遍历

我很不耐烦,期待了解与这个 SO 问题相关的catamorphism :)

我只练习了 Real World Haskell 教程的开始。所以,也许我现在要求太多了,如果是这样,请告诉我应该学习的概念。

下面,我引用了catamorphism 的维基百科代码示例

我想知道您对下面 foldTree 的看法,这是一种遍历 Tree 的方式,与其他 SO 问题和答案相比,还涉及遍历 Tree n-ary tree traversal。(与是否为二元无关,我认为可以编写下面的变态以管理 n 叉树)

我发表了我所理解的评论,如果你能纠正我并澄清一些事情,我会很高兴。

在这一点上我遇到了很多困难,我似乎猜测态射叶将应用于任何叶但是为了真正使用这段代码,需要为 foldTree 提供一个定义的 TreeAlgebra,一个具有定义的态射叶的 TreeAlgebra从而做点什么?
但在这种情况下,在 foldTree 代码中,我希望 {f = leaf} 而不是相反

非常欢迎您的任何澄清。

0 投票
4 回答
2078 浏览

python - 惯用 Python:传播产量或展平序列?

我正在编写一个广度深度优先树遍历函数,我想做的是:

这个想法是在树中得到一个(平面)节点序列。

方法#1:(传播收益)

方法#2:(展平序列)

第一种方法看起来更干净,但我觉得很奇怪yield在每个级别的子树中显式地设置每个节点。

第二种方法简洁且略显肮脏,但它符合我在 Haskell 中编写的内容:

所以我的问题是:哪个更好?还是我错过了最佳的第三选择?

0 投票
11 回答
80047 浏览

algorithm - 前序到后序遍历

如果二叉搜索树的前序遍历是6、2、1、4、3、7、10、9、11,那么如何得到后序遍历呢?

0 投票
7 回答
11888 浏览

algorithm - 在每个节点进行前后访问的迭代深度优先树遍历

谁能指出我的迭代深度优先树遍历的伪代码,其中可以在前序和后序对每个节点执行操作?

也就是说,在进入节点的子节点之前的动作,然后是从子节点上升之后的动作?

另外,我的树不是二元的——每个节点都有 0..n 个子节点。

基本上,我的案例是转换递归遍历,我在当前节点上执行前操作和后操作,递归到子节点的任一侧。

0 投票
1 回答
1808 浏览

tree - 使用抽象基类类型遍历整个 JAXB 对象树

我编写软件的系统硬件是通过硬件以树形结构物理连接的。我们应用程序中的数据模型是一个树。对于我们的新重写,我们使用 JAXB 创建数据模型。

我们有三种类型的设备,它们都共享一些属性,所以我在 XSD 模式中创建了一个抽象设备类型。我的三个设备(Pushers、Switchers、Receivers)都是从 XSD 中的 DeviceType 扩展而来的,如下所示:

推送器只有切换器子元素,而切换器可以同时具有切换器或接收器子元素。接收器是行的末端(叶节点)。xjc 构建类。我得到了 Unmarshaller 来构造对象树,但我不知道如何为 getDevice() 获取 getter 方法。对于树遍历,我希望 JAXB 能提供类似“getChildren”的东西,但我没有在 API 中看到。如果我得到一个切换器对象,我有 getSwitcher() 和 getReceiver() 的方法,但没有 getDevice() 方法。但我试图避免使用instanceof当我进行完整的树遍历时。xjc 构建的 Java 代码确实从 Device 类扩展而来,但我还没有学会如何为所有设备获取通用 getter 方法。两天前我刚开始使用 Jaxb,我有很多东西要学习 Jaxb API。

昨天是我玩 JAXB 的第一天,我认为这个工具非常适合我们的系统。我们的硬件实际上是一棵树,我们有多个部署,使用 XML 作为我们的站点配置文件来构建状态模型将是理想的。

这里对 JAXB 新手有什么建议吗?

0 投票
3 回答
347 浏览

jquery - Selecting non-nested subnodes with JQuery

I have a HTML structure that contains nested divs with the container class:

This could include more divs and deeper/different nesting.

Starting from some point in the tree I'd like to find all containers in that subtree that are not nested within other containers. So for example from div #1 I'd like to find the divs #2 and #5, but not #3 (since it is nested in container #2 already found).

What would be the best way to accomplish this?

0 投票
2 回答
1178 浏览

jquery - 包装多个

元素成

使用 jQuery 我想改变这个:

进入:

任何建议将不胜感激。

谢谢!


刷新 uiwebview (iphone) 中的 html 文件的内容

我在 UIWebView 中加载了一个简单的 html 文件。此 html 包含一个网络摄像头的单个图像。

现在我想每 6 秒刷新一次这个 htmlfile/image ,并显示更新的网络摄像头图像。

我试过了:

它不起作用。还有其他知道刷新页面的方法吗?

谢谢。

0 投票
2 回答
12675 浏览

python - BeautifulSoup 解析树上的深度优先遍历

有没有办法在 BeautifulSoup 解析树上做 DFT?我正在尝试做一些事情,例如从根开始,通常,获取所有子元素,然后为每个子元素获取他们的子元素,等等,直到我点击一个终端节点,此时我将建立我的方式备份树. 问题是我似乎找不到允许我这样做的方法。我找到了 findChildren 方法,但这似乎只是将整个页面多次放入列表中,并且每个后续条目都会减少。我也许可以使用它来进行遍历,但是除了列表中的最后一个条目之外,它似乎没有任何方法可以将条目标识为终端节点。有任何想法吗?

0 投票
1 回答
203 浏览

c++ - 遍历树..为了内存访问冲突的问题

所以我写了这个小小的和平代码作为自己的练习......

但是我在*traverse_inorder(p->left)* 内存访问冲突和程序崩溃行进入 travers_inorder 函数。为什么???有任何想法吗?

更新:我正在使用 Visual Studio 2008 SP1 一个 Visual C++ 编译器