binary-search-tree相关内容

C#-二叉搜索树包含/存在的方法

我真的很难让这个方法起作用,我想知道你是否能帮我。我一直在使用ref关键字,所以我将继续使用它。我一直在网上搜索,得到了一些帮助,但我已经尝试了我能想到的所有方法。我的Count和Height方法都起作用了,但是我真的很难让这个容器方法起作用。网络上的许多例子都显示了包含的公共和私有方法(我理解为什么),但我相信它可以在一个方法中完成?当然,对吧?此外,请忽略RemoveItem方法,除非您希望抢 ..
发布时间:2022-07-01 17:33:06 C#/.NET

在Python中实现BST的打印--参数重构问题

我发现了打印BST的一个很好的实现 here来自bck。我想在我的代码中实现它,但是我真的不知道我应该更改什么参数的名称,这样它才能在我的代码中工作。你能帮我搬一下吗?我想我必须像他说的那样更改left和right,但是我不知道我应该更改它是为了什么。 我复制的定义是print_tree,上面的所有内容都是我的,所以我只需要在print_tree中更改一些 class Node: ..
发布时间:2022-03-17 12:31:33 Python

递归地将项目添加到BST

我正在尝试创建一个将项目添加到树中的方法,然后我希望将此树打印到控制台。我有一个继承的类,基于它我需要编写所需的方法: public abstract class BinaryTreeNode { protected int data; // value stored in the node protected BinaryTreeNode left, right; // l ..
发布时间:2022-03-17 12:26:41 Java开发

树节点可以既是根节点又是叶节点吗?

树节点可以既是根节点又是叶节点吗?如果是,为什么? 我知道根节点位于树的0级。我还理解叶节点是没有子节点的树节点。因此,如果树只有一个根节点A,而没有其他节点,那么该根节点A也会被视为叶节点吗? 一个树节点是否可以既是根节点又是叶节点? 推荐答案 如果一个树节点可以同时具有根节点和叶节点,为什么? 您回答了自己的问题: 我知道根节点位于树的第0级。我还了解叶节点是没 ..
发布时间:2022-03-17 12:20:42 Java开发

如何解决编码最小最大分割问题

我一直在试图理解1H30的编码问题,以及如何使用二进制搜索来解决这个问题。我找到了答案,但我不明白背后的逻辑。能请得到它的人给我讲解一下这个答案吗? 这就是问题 任务说明 您将获得整数K、M和一个非空的零索引数组A 由N个整数组成的。数组的每个元素都不大于 大于M 应将此数组分为K个连续元素块。 挡路的大小是0到N之间的任意整数。 该数组应该属于某个挡路。 挡路从X到Y的和等于A ..
发布时间:2022-03-17 12:13:41 前端开发

二叉搜索树遍历-查找最接近的值

我正在做一个AlgoExpert挑战,我已经花时间自己解决它了,看了关于它的视频讲座,我觉得我理解得很好,但我的递归和树遍历技能现在相当低(这就是我正在做它的原因)。 这是提示符 编写一个接受二叉搜索树(BST)和目标整数的函数 值,并返回与BST中包含的该目标值最接近的值。每个BST节点都有一个整数值、一个左子节点和一个右子节点。其子节点本身就是有效BST节点,或者无/空 目标:1 ..
发布时间:2022-03-17 12:00:20 前端开发

通过引用传递指针时出错

我将包含指向此非常类似问题的链接:C++ initial value of reference to non-const must be an lvalue 错误是相同的(非常数引用的初始值必须是左值),但情况不同。与该示例相反,在我的函数中,指针确实需要修改。我正在编写一个递归函数来将节点添加到二叉搜索树中。此处包含该函数。 1 void BST::insert(BSTNode*& c ..
发布时间:2022-03-13 10:56:13 C/C++开发

返回二叉搜索树的最小和最大元素-Python

如何向我的BST类添加两个不同的函数来计算给定树中的最小和最大元素?那么最小(自我)函数和最大(自我)函数?目前我无法做到这一点,我有一种感觉,这可能与存储整数有关。我的下面的BST可以按原样存储整数吗? class BTNode: def __init__(self,d,l,r): self.data = d self.left = l ..
发布时间:2022-02-26 22:09:49 Python

我的二叉树程序在输出时崩溃

我正在尝试编写二叉树,但它崩溃了。 它一直打印出相同的数字:左节点(较小的数字)和根节点。它递归地重复该程序,直到崩溃。 我知道我的代码还有其他一些错误,但这是需要解决的主要问题,所以我的代码如下: #include using namespace std; struct node { int value = 0; node* left = NULL ..
发布时间:2022-02-23 10:46:30 C/C++开发

如何指定随机数的范围?

我有随机插入数字的二叉搜索树代码.每次都可以修改大小,但我想修改数字的范围,例如:我希望随机数只有一位或两位. 我该怎么做? public static void main(String[] args) {BinarySearchTree bst = new BinarySearchTree( );随机随机=新随机(System.currentTimeMillis());整数 [] 随机数 ..
发布时间:2022-01-24 20:04:52 Java开发

std::set 和 std::map 有什么区别

我对 c++ 编程比较陌生,想知道是否有人可以帮助我澄清一些问题. http://www.cplusplus.com/reference/set/set/ http://www.cplusplus.com/reference/map/map/ 我一直在阅读有关如何实现 STL 二叉搜索树的文章,并且一直注意到 std::set 和 std::map 经常被提及作为完成此类任务的方 ..
发布时间:2022-01-17 18:45:52 C/C++开发

在二叉搜索树上实现迭代器

我最近一直在编写一堆不同的二叉搜索树实现(AVL、splay、treap),我很好奇是否有一种特别“好"的方法来编写迭代器来遍历这些结构.我现在使用的解决方案是让 BST 中的每个节点都存储指向树中下一个和上一个元素的指针,这将迭代减少到标准的链表迭代.但是,我对这个答案并不满意.它将每个节点的空间使用量增加了两个指针(下一个和上一个),在某种意义上它只是作弊. 我知道一种构建二叉搜索树迭代 ..
发布时间:2022-01-10 14:31:30 其他开发

二叉搜索树递归插入不显示任何内容

我在二叉搜索树上做一个小的 Java 工作,但是当我在树中实现一个节点的递归插入并显示它时,我什么也没得到.我已经研究了一段时间了,我不确定,但我认为这是一个通过引用的问题. 这是我的代码: 公共类 BST {私有 BSTNode 根;公共 BST() {根=空;}公共 BSTNode getRoot() {返回根;}公共无效插入R(BSTNode根,可比元素){如果(根==空){root ..
发布时间:2022-01-09 13:02:38 Java开发

BST 构建树双指针

我不确定如何将指针设置为指向构建树的指针.就像我曾经到一片叶子并调用插入一样,我应该如何插入另一个元素调用插入与根节点或根指针的地址?我认为这个函数的问题是名称根应该是双指针对吗? #include "bst.h"#include #include //临时节点的任意列表树节点 *new_node, *root, *tmp, *parent;int elem ..
发布时间:2022-01-09 12:53:36 其他开发

std::lower_bound 不专门用于红黑树迭代器是否有任何技术原因?

我一直假设 std::lower_bound() 以对数时间运行,如果我传递一对红黑树迭代器(set::iterator 或 map::iterator) 到它.我不得不烧了自己两次才能注意到 std::lower_bound() 在这种情况下以 O(n) 时间运行,至少在 libstdc++ 实现中是这样.我知道标准没有红黑树迭代器的概念;std::lower_bound() 会将它们视为双向迭 ..
发布时间:2022-01-07 11:39:20 C/C++开发

如何就地将二叉树转换为二叉搜索树,即我们不能使用任何额外的空间

如何将二叉树就地转换为二叉搜索树,即我们不能使用任何额外的空间. 解决方案 你没有太多的事情要做,但如果需求是我认为的那样,你已经创建了一个二叉树并坐在内存中,但未排序(无论如何,您希望它的排序方式). 我假设树节点看起来像 struct tree_node {struct tree_node * 左;struct tree_node * 对;data_t 数据;}; 我还假设您 ..

真实世界的树结构示例

我正在寻找一些用于商业/免费软件项目的树结构示例,无论是现代的还是旧的.我可以在维基百科上看到示例,但我正在寻找更具体的示例以及如何使用它们.例如,数据库中的主键(根据我读过的内容)存储在 BST 结构或 BST 的变体中(请随时纠正我) 我的问题不限于二叉搜索树 (BST),它可以包括任何变体,例如红黑、AVL 等. 解决方案 如果示例有点通用,即与图形相关而不一定与树相关,是否可 ..
发布时间:2022-01-05 19:04:21 其他开发

检查二叉树是否是二叉搜索树的伪代码 - 不确定递归

我有作业要写伪代码来检查有效的二叉树是否是搜索二叉树. 我创建了一个数组来保存树的有序值.如果有序值按降序排列,则意味着它确实是 BST.但是,我在方法 InOverArr 中的递归遇到了一些问题. 我需要更新数组的索引,以便按照它们在树中的顺序将值提交给数组. 我不确定在递归过程中索引是否真的正确更新..是不是?如果你看到一些问题,你能帮我解决这个问题吗?非常感谢 伪代码 ..
发布时间:2022-01-05 19:02:36 其他开发