binary-tree

    1熱度

    1回答

    好吧,所以給定這棵樹,我需要寫出它的前序,後序和後序遍歷。 9 / \ 5 12 /\ /\ 2 7 11 15 ///\ \ 3 6 10 13 16 \ 17 這是我

    1熱度

    1回答

    我想在C中實現一個Binary Tree數據結構,並在幾次插入後執行一次inorder遍歷。 程序只打印我插入的第一個元素,而不打印其他任何節點。 #include <stdlib.h> #include <stdio.h> #include <string.h> struct tree { struct node *root; }; struct node {

    0熱度

    1回答

    對於下面的代碼,我試圖讓打印的節點以變量s內的完整表達式存儲在字符串中。 string ExprTree::prefixOrder(const ExprTree & t){ string s; if (t.root != NULL){ s.append(t.root->toString()); prefixOrder(t.root->getLeftChild

    -1熱度

    1回答

    給遞歸算法btProd它需要輸入一個二叉樹,並輸出 包含在二叉樹的數字產品的價值。如果輸入是空樹,那麼算法應該返回null。 算法btProd(P) 要求:輸入是一個樹P 1:btProd(空)←0 2:btProd(葉X)←X 3 :btProd(節點L x R)←btProd(L)+ x + btProd(R) 這就是我會這麼做的方式,但我不確定這是否正確

    0熱度

    2回答

    我不知道,如果我這得太多,但我不認爲一般情況下的解決方案:(的

    4熱度

    1回答

    由於平衡BST將採取O(log(n))時間正在提取最大(通過提取我的意思是既查找和刪除最大元素)。 另一方面Max-heap也需要O(log(n))時間來提取最大元素。 他們中的任何一個在Extract-Max操作中都有優勢嗎?

    1熱度

    1回答

    如何打印二叉樹斯威夫特使輸入79561打印輸出是這樣的: 7 /\ 5 9 /\ 1 6 我試着用For Loops和If Statements一些代碼來安排這一點,但它並沒有奏效。 我的代碼是: import UIKit //Variable "node" used only to arrange it in output. var node = "0" var sp

    0熱度

    1回答

    我正在F#中實現一個簡單的BST實現,並且遇到了一個絆腳石,我找不到我的路。 此代碼: type BST = | Empty | TreeNode of int * BST * BST let rec insert value tree = function | Empty -> TreeNode(value, Empty, Empty) | TreeNode(hd,

    0熱度

    1回答

    我一直在掙扎在二叉樹中做我的遞歸函數,我試圖做一個函數,要求一個位置,然後它返回的值是在那個位置,我花了很多次在代碼上進行更改,大部分時間都只是死掉。所以如果有人知道我做錯了什麼,我會很感激,非常感謝。 struct node { int info; struct node *left; struct node *right; }*root; class BS

    2熱度

    2回答

    我最近遇到過一個問題。我想獲得std::set元素的相對索引。例如,如果std::set存儲{1, 2, 4, 6, 9, 15},並且我想查找元素{4}並有效地獲取其相關索引{2}。當然,我可以寫std::distance(myset.begin(), myiterator),但這個操作的複雜性是O(n*logn)。如果我可以訪問std::set的真正紅黑樹,我只需運行rb_tree_node_