首页 文章
  • 0 votes
     answers
     views

    在反向二叉搜索树中的顺序继承

    如果BST被翻转,我对inorder继承人/前任有轻微的困惑 . 当BST被翻转/反转时,我的意思是当右子树中的所有元素都较小并且左子树中的所有元素都较大时 . 通常,正确的子树具有更大的 Value . 如果它是相反的,那么inorder继承人/前任的定义是否仍然保持不变? 对于普通树,顺序继承者将是右子树的最左边的子项不是吗? 对于翻转的BST,如下例所示: 8 /\ 15 4...
  • 0 votes
     answers
     views

    遍历包含两种类型值的BST

    对于作业,我正在构建一个程序,将文本文档的单词加载到BST以及它们在文档中出现的行,因此节点有两个数据成员:一个字符串(单词)和一个整数队列(单词出现的每一行,带有重复项) . BST类也是模板类 . 对于作业的其中一个部分,我必须找到具有最大出现次数的单词并将其打印出来 . 但是,树是按第一个数据成员(字符串)排序的,所以我知道找到长度最大的队列意味着遍历整个树 . 包含在不完整中的私有遍历函...
  • 1 votes
     answers
     views

    使用inorder后继方法打印BST的时间复杂度

    我有一种方法可以在二进制搜索树(BST)中查找下一个inorder后继 . “inorderSuccessor”方法将BST的任何节点作为输入并输出下一个inorder后继 . 方法和树类定义如下: class BSTInorderSuccessor{ public static Node inorderSuccessor(Node node) { if (node.right !=...
  • -2 votes
     answers
     views

    为什么我的insert_node函数删除了我的root? (C)

    我正在尝试编写一个程序,将带有成员字符串的节点插入到BST中,然后打印有关该BST的信息,如高度,顺序遍历,叶子数等等... 到目前为止,当我进行inorder遍历时,它会打印输入的最后一个字符串作为根,即使它应该在树的底部 . 这是代码: 插入功能: void insert_node(Node* root, char *nextString) { int newLessThanRoot ...
  • 0 votes
     answers
     views

    leaf to root bst遍历

    我只是想知道,给定一个指向其左右儿童的节点,是否有可能以某种方式获得整个bst树的顺序打印? 我所知道的就是它是BST . 而我所知道的节点是他知道他的孩子是谁(左和右) . 我既没有访问节点的根也没有父节点 . 选择的节点是随机挑选的,我需要返回整个树的顺序 . 我认为没有足够的信息可以开始,我的朋友在求职面试中得到了这个问题,并想知道这是一个无法解决的问题,还是有一个我不知道的伎俩? 在此先感...
  • -1 votes
     answers
     views

    二叉树数组到有序二进制树数组

    我正在解决HackerEarth问题之一 . 问题陈述如下, 给定一个包含N个节点的完整二叉树,并且每个节点都附加一个不同的整数 ai ,找到可以将二进制树转换为二叉树搜索树的最小交换次数 . 在一次交换中,您可以选择任意两个节点并交换它们的值 . 您将获得二叉树的数组表示 . 树的根将在 a[1] 根的左子将在 a[2] ,root的右子将在a3 . 数组位置 k 处的节点的左子节点将位于 a[...

热门问题