binary-tree

    7热度

    2回答

    如果我插入的项目:陆续10,12,14,1,6成二进制最小堆一个项目怎么会结果的样子,我的问题是与以下 当我开始我有: 10 然后 10 / 12 然后 10 /\ 12 14 然后 1 /\ 10 14 / 12 ,但这是不正确的,那么什么是这样做的正确方法? 注:这是一个家庭作业的问题,我试图理解这个概念,如果你不舒服解决的问题(这是无论如何也全部问题),请提供类似

    0热度

    2回答

    我需要打印(访问)二叉树的单个级别上的节点。 我不明白这是如何做到的,但我再次对算法不熟练。 我知道,在广度优先遍历中,您使用一个队列,并且首先将根节点放入队列中,然后您将它列入队列并将其排入子队列,然后您将第一个被取消的子队列出队列,然后将其排入子队列等等...... 据我所知,这使得不可能确切地知道何时一个层次结束,另一个层次开始,除非您在创建二叉树时将其分配给每个节点,然后在您执行该操作时检

    2热度

    4回答

    我一直在试图制定一个快速实现这一目标的好方法,但我不确定哪种方法最优化,我希望你们中有些更有经验的开发人员可以提供帮助通过您的数据结构知识:-) 本质上我有一个路径列表(例如C:\ inetpub \ wwwroot \,C:\ www \ websites \ vhosts \ somesite.com \,D:\ www-mirror \ websites \ vhosts \ somesit

    0热度

    3回答

    我奋力去了解如何使用字典编写的基本实现,并在Python中序遍历二叉搜索树。该课程必须使用以下结构。 我将非常高兴,如果有人能在每个功能填写空白(通)让我开始。 class Dictionary: def __init__ (self): pass def insert (self, key, value): pass def del

    7热度

    5回答

    我知道二叉搜索树上的顺序遍历(访问左,访问根,访问权)给了我一个排序结果。但是我需要在二叉树上进行后序遍历(访问左边,访问权,访问根),结果应该给我排序的值。 为了实现这一点,我该如何构建我的二叉树?

    -3热度

    3回答

    我以前做过BST。我可以使用它来制作BST吗? template <class Item> class binary_tree_node { public: private: Item data_field; binary_tree_node *left_ptr; binary_tree_node *right_ptr; }; 我试过用

    1热度

    5回答

    我已经看过一些BST的代码,我可以看到每个节点都是一个结构。这是必要的吗?

    4热度

    1回答

    我需要找到一个数据结构,我可以用下面的动作做: 生成(S,K) - O(nlogn) 搜索(S,K) - O(logn)时间 插入(S,K) - O(logn)时间 删除(S,K) - O(logn)时间 减少-高达(S,K,d ) - O(logn) - 此方法应该将每个节点减去d(d> 0),即< = k 明显的第一选择是RedBlackTree。 但是,我不能找到有关O(Logn)中的减少-

    4热度

    5回答

    我有一个BST,它是C++中的一个链表。我如何从内存中删除整个事物?它会从类功能完成吗?

    1热度

    5回答

    这应该是遍历一个BST并删除每个节点,包括根节点。然而,最后,我得到了“root还有一个左节点”的消息。为什么并非所有节点都被删除? void deleteTree() { deleteNode(root); if(root->right) cout << "root still has a right node" << endl; if(root->l