binary-search-tree

    0热度

    1回答

    我有以下代码实现BST。但是当我尝试通过调用插入函数插入元素时,它只打印出10和15.有人可以提供建议/更正吗? class Node: def __init__(self,val): self.rightchild = None self.leftchild = None self.root = None self.value=val

    -2热度

    1回答

    嗨大家好,我知道这对大多数人来说是一个简单的问题,所以请帮助我,我试图实现如何打印二进制搜索的节点树递归级别一样 5 /\ / \ 3 7 /\ /\ /\/\ 2 4 6 8 Expected Print Level o : 5 Level 1 : 3

    1热度

    1回答

    我目前正在编写一个方法,在Java中搜索以最短距离到达两个节点​​的节点。我的想法是,如果树中都存在两个节点,则根将是第一个可以同时到达的节点。所以我递归并检查根的左边/右边,看看它们是否也能达到两者。通过找到至少找到一个节点后找不到的第一个节点,我应该找到距离我所搜索的节点最近的节点。 我已经将此任务分解为两个方法,一个名为canReach,它搜索树中的一个节点,另一个使用canReach的布尔

    0热度

    2回答

    有人可以帮我弄清楚如何正确删除我的bst实现吗?我知道这是一个简单的问题,但我尝试了一切。我想避免声明一个动态数组,并且如果可以用这个指针结构保持代码(不是双关语意图)。问题在于析构函数部分。谢谢 ! #include<iostream> using namespace std; struct Tree{ struct Tree* left; struc

    0热度

    1回答

    我需要开发一套功能扩展glib2GTree有: 找到第一个元素 找到最后 找到最近的(地板,小区,最大小于,最小大于) 找到第一个很容易。首先,您只需停止g_tree_foreach()回调。但是如何找到最后一个元素而不需要遍历整棵树? 我以为我可以使用g_tree_search()的回调函数,它会一直返回正值直到找到,但我怎么知道我目前在最后一个元素上? #include <stdio.h>

    2热度

    1回答

    如果C表示的“独苗”的节点数量(一个节点被称为唯一的孩子时,其父是不是null & &它没有兄弟姐妹),为什么我们的,对于每一个AVL树与N个节点:C < =(N/2)?

    0热度

    1回答

    我试图找到比二进制搜索树中的给定值更高的数值,以获得乐趣和学习过度。我已经用纸上的逻辑书写了迄今为止的一项索取功能。但是,当我运行它时,它没有给出预期的结果。例如,BST中包含30, 25, 98, 23, 28, 97, 99, 29。我试图获得比28更大的值应该是5,但输出是2。方法中的问题在哪里?我遍历树中的所有节点,是否有更高效的解决方案? public int findMax(Node<

    2热度

    1回答

    我正在处理二叉树。 因此,我在我的数据库中有一个数据库表,其中每个节点都是父节点,最多可以连接2个其他节点。我有一个计划,可以有效地找到最少的节点(在给定节点下),该节点是少于2个其他节点的父节点。换句话说,我正在寻找最开放的位置来放置一个新节点。所以我把它作为一个广度优先搜索来实现。但是我为每个节点调用数据库的方式效率不高。我基本上是沿着树,在每个级别上生成一个运行的节点列表,并检查每个节点是否

    1热度

    1回答

    我正在尝试编写一个方法,该方法可以通过给定的值从BST中删除节点,并且我需要它来返回此删除的值。我发现了递归实现的各种示例,但由于它们的本质,它们不能返回删除的节点,而是返回根节点。下面是我现在 public TreeNode remove(TreeNode node, int data) { if (null == node) { return null;

    0热度

    2回答

    我已经编写了这个函数来查找二叉搜索树中最浅的叶子,它不是最好的,但它做的工作,叶子必须在找到它之后返回。 它是不改变函数原型的必要条件。 我的问题是由以下 问题是我是回一个没有const的指针函数内部一个const指针评论指出,我张贴问题前,所有的问题,其中的类中的功能,我没有研究过它们,所以我不知道它是否与类之外的函数相同,有没有解决这个问题的方法? struct Node { int