问题标签 [ternary-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.
python - 创建具有 k 宽度的递归三叉树的大 O 复杂度
我想知道我的算法的复杂性。
我正在尝试优化从价格列表中购买每棵树的每一片叶子的股票的利润。对于每个价格,我们可以做 3 种选择,买一个单位,卖一个单位或什么都不做。有一个约束限制了我们一次可以拥有的股票数量,例如最少 0 个股票和最多 5 个股票,所以如果我们有一个包含 20 个价格的列表,我应该采取哪些行动来最大化利润并以 3 个股票结束。
对于这个任务,我创建了这个递归方法:
如果没有最小和最大库存的约束,我知道三叉树的复杂度将是 O(3^n),如果我使用动态编程比较每个级别的值,我知道这可以在 O(k*n) 中解决深度,然后继续前进。这个算法会一直到深度结束,然后是向后,向前,向后向后等等。
有人能告诉我什么是复杂性吗?我无法理解它。
c++ - 分段错误(核心转储)但无法弄清楚
据我了解,段错误通常是由无效的内存访问或泄漏引起的?但我不知道它在哪里。有没有像程序一样的方法可以遍历您的代码并找出导致此错误的位置?请帮忙。
java - 如何打印出三叉树?
我有以下方法可以递归地执行三叉树的前序遍历,但很难以某种方式打印它。
我想缩进树的每个级别,以便更容易可视化树的结构。请帮忙。
algorithm - 多数树评估
考虑一个深度为 h 的完整三叉树,它由一个根连接到三个深度为 h - 1 的完整三叉树上。有 n = 3^h 个叶子,每个叶子都有一个与之关联的布尔值。每个内部节点,包括根,都等于其大多数子节点的值。
这是深度为 2 的树的示例:
给定叶子输入向量 [0, 0, 1, 0, 1, 0, 1, 1, 1],我们想找到树的根。为了找到根,我们可以评估所有的叶子和内部节点(即 3^h 操作)。但是我们也许能够评估更少的节点。在上面的示例中,我们可以看到第一个内部节点(最左边)的值可以在检查其前两个子节点后进行评估。类似地,在 depth = 1 时,前两个节点足以找到树的根。
我一直在思考这个问题,但我找不到解决问题的好方法。
我认为代码完成了这项工作,但它仍然检查所有内部节点并且不跳过冗余节点,这并不是最佳的。我认为正确的方法是使用像二叉搜索树这样的递归算法,但我无法在 BST 和多数树评估之间建立联系。
如果您能给我任何有关如何解决此问题的指示,我将不胜感激。谢谢!
插图来自这里: http: //www.math.ucsd.edu/~gptesler/188/MajTree/majtree.html。
algorithm - 使用三叉树查找 minimun Vertext-Cover
我找到了一些算法来找到一个最小的顶点覆盖,比如使用二叉搜索树,但我读到使用三叉树更好。但我找不到任何关于它的信息或想出一个算法。
有人知道怎么做吗?
algorithm - 分而治之三叉树搜索
haskell - Haskell:三叉树平均值,嵌套`where`
我试图计算三叉树的平均值。似乎不可能在一个函数中完成它。有什么办法可以解决这个问题,还是需要使用两个函数?谢谢。