问题标签 [inorder]

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 投票
6 回答
1671 浏览

algorithm - 不保留已访问标志的迭代后序遍历

为什么有必要为迭代后序遍历而不是为中序或前序迭代遍历保留已访问标志。

是否可以在不保留已访问标志的情况下进行后订单遍历?

0 投票
3 回答
22271 浏览

java - Java 二叉树。打印InOrder遍历

我在打印我的二叉树的 inOrder 遍历时遇到了一些问题。即使在树中插入许多项目后,它也只打印 3 个项目。

0 投票
1 回答
6181 浏览

java - 从中序和前序遍历重构二叉树

我编写了以下代码,用于从其中序和前序遍历构造一棵树。它对我来说看起来是正确的,但它产生的最终树与构建它的树没有相同的顺序输出。谁能帮我找出这个功能的缺陷?

注意:preIndex 是在函数外部声明的静态变量。

0 投票
2 回答
5594 浏览

algorithm - 非二叉树可以按顺序遍历吗?

我们在这里处理一个最相似的邻居算法。该算法的一部分涉及在树上按顺序搜索。

问题是直到现在,我们还不能让那棵树成为二叉树。

非二叉树是否有类似的顺序遍历。特别是,我认为有,只是从左到右遍历节点(并且只处理一次父节点?”)

有什么想法吗?

更新

这棵树的每个节点都有一个由 n 个对象组成的小图。每个节点将有 n 个子节点(图中每个元素 1 个),每个子节点都是另一个图。所以它的“一种”ab 树,没有所有的上溢 - 下溢机制。所以我猜最相似的顺序遍历会类似于 btree 中序遍历?

提前致谢。

0 投票
1 回答
203 浏览

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

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

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

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

0 投票
4 回答
13689 浏览

python - 按顺序打印二叉树 python

我和我的朋友正在做一些使用 Python 3.1 编程的学校作业,并且非常卡住。我们正在编写一棵二叉树,它工作正常,除非我们想以一种可以创建句子的方式按顺序打印所有节点(所有单词都按顺序依次排列)。我们一直在互联网上寻找有关如何进行的线索,并且我们一直在研究这个小东西两个小时。任何建议/帮助都会很棒。

我们的程序/二叉树:

当我们运行程序时,我们会得到一种打印,如下所示:“bintree.Treenode object at 0x02774CB0”,这不是我们想要的。

我们通过运行这个来使用树:

此外,倒数第二行给了我们“None”而不是“True”,这很奇怪。

0 投票
4 回答
12156 浏览

java - 返回树的有序字符串

编辑这已通过使用此线程中建议的 StringBuilder 解决。谢谢 :D

你好,

我有一棵树,并试图按顺序返回内容的字符串。

我目前可以用这样的东西打印出树:

但我想要做的是返回字符串(而不是在递归时打印出每个节点的内容),我不知道该怎么做。我尝试了下面代码的许多变体,但它只返回它在递归中找到的最后一个元素。

0 投票
1 回答
3450 浏览

algorithm - 需要帮助理解二叉搜索树中的中序后继

我需要帮助来理解这个面试问题:

问:找到一种算法以在二叉搜索树中找到给定节点的下一个节点(例如,中序后继),其中每个节点都有到其父节点的链接。

父母是指有序的前任还是直接父母?如何创建一棵树,其中节点具有指向根节点或有序前驱的链接?任何帮助理解数据结构和下面的程序将不胜感激......

解决方案(如表格中所示)如下所示:

0 投票
3 回答
2475 浏览

c++ - 树的 InOrder 迭代器实现需要帮助

我正在为家庭作业实现一个 InOrder 迭代器,这意味着迭代器会这样前进:

  • 拜访左孩子
  • 访问节点
  • 拜访右孩子

还有这些复杂性限制:遍历整个树的运行时复杂度应该是 o(n),其中 n 是树中的节点数,内存复杂度应该是 o(h),其中 h 是树的高度。

我尝试使用这种方法来实现 Advance(++) 运算符:

我还没有测试它,但我认为它应该可以正常工作。当我尝试实现后退 (--) 运算符时,我的问题就开始了。我最初的方法是拥有第二个堆栈:recedeStack,并以与 ++ 运算符相同的方式使用它。但我不知道如何使后退堆栈在 ++ 运算符中保持同步,反之亦然(--运算符中的 AdvanceStack)。无论如何,并非没有超越内存复杂性限制。

关于如何解决这个问题的任何想法(使用我当前的实现或不使用)?

0 投票
1 回答
506 浏览

django - django中有趣的多步表单

我有一个多步骤表格,但它与普通表格有点不同。不同之处在于并非所有步骤都是连续的,形式可能是有序的。为了清楚起见,假设有 Form1、和。Form2Form3Form4

那些可能像Form1- Form2-Form3Form1- Form2-一样运行Form4。但是,没有机会像Form2- Form1(Form_x - form_y | x < y)

如何在 django 中实现这样的表单链?另外,我不明白 FormWizard 是如何工作的。它会自动产生后退按钮还是当用户转到上一个表单时它的行为如何?可以解释或给出简单的例子或参考吗?

谢谢