binary-search-tree

    0熱度

    1回答

    我有一個正常的二叉搜索樹,用數據的字符串值和左右節點實現。樹工作正常,但我有我的rankOf函數的麻煩。我使用遞歸來查找節點,並且當元素存在時方法成功,但是當不存在的值不起作用時,我無法弄清楚如何設置布爾值來幫助解決這個問題。下面是代碼: private int rankOf(String s, Node n){ if (n != null){ //check root

    1熱度

    2回答

    我想在C編程語言中給出下圖中給出的二叉樹。 結構以製造具有兩個節點二叉樹是這樣的 - struct node { int data; struct node* left; struct node* right; }; 但製作樹有多個孩子的,結構需要改變每一次,那麼,有沒有辦法讓改變每一個結構時間?

    0熱度

    2回答

    只是練習並注意到它很容易序列化(通過深度優先搜索遍歷)一個bst並反序列化到樹中。但是,如果序列化是通過麪包優先搜索遍歷完成的,我很難對其進行反序列化。 例如,給定輸入:5,2,11,N,3,7,19,N,N,6,8,N,N,N,N,N,N 尋找輸出 - 5 / \ 2 11 /\ /\ N 3 7 19 /\ /\ 6 8 N N /\/

    0熱度

    2回答

    我已經寫了這種方法來將我有的排序數組轉換爲平衡二叉搜索樹。我不確定這種方法的大時間複雜性應該是什麼。它會是O(n)嗎? Node ArrayToBST(Node arr[], int start, int end) { if (start > end) return null; int mid = (start + end)/2; Node node =

    0熱度

    2回答

    嘗試打印二叉樹中的節點時出現分段錯誤。它看起來是第三個節點的問題。我搜索谷歌和堆棧溢出了幾個小時,但我不明白是什麼問題。我試圖在C中教自己的數據結構,並且非常適合初學者,所以我可能會在某種程度上做一些事情。 #include <stdio.h> #include <stdlib.h> typedef struct node { int data; struct node

    0熱度

    1回答

    我正在嘗試編寫代碼以將二進制樹的inorder內容卸載到向量中。 IE: #include <iostream> #include <vector> #include "BinaryTree.h" using namespace std; int main() { BinaryTree tree; vector <double> v; // Test i

    -1熱度

    2回答

    我有以下的二叉搜索樹,根節點20.我試圖回答的問題是,如果我們應用功能t = deleteRoot(t),新的價值是什麼根節點以及其直接的左側和右側子節點(例如,當前的根節點爲20,即時左側子節點11和直接右側子節點32)。爲了解決這個問題,我在過去的2個小時裏至少寫了10頁,但遞歸正在殺死我。有人可以幫助我想象這一點 - 即某種思維方式,可以讓我處理遞歸。我並不擅長可視化遞歸如何工作,但我可以稍

    0熱度

    1回答

    我正在使用遞歸函數將節點插入到二叉搜索樹中。該程序通過創建根節點(如果沒有根節點)來工作。 Root是一個指向節點struct的指針。如果root已經存在,我會調用worker函數。 注:鍵是int,Item是一個字符串。 當調用worker函數時,current->key(-858993460)和current->item(Error reading characters of string)不

    2熱度

    4回答

    我試圖在C++中管理BST以達到我的學術目的。 我並沒有問題,除了DeleteNode函數的任何位置,也 我選擇來實現與class,而不是用struct這個數據結構。 問題是,我無法弄清楚如何使刪除功能正常工作,通常我得到0xDDDDDDDDD錯誤我的調試器說,有時我可以刪除節點,有時我的程序崩潰。 我認爲這是指針的一個可能的問題,但我無法弄清楚我做錯了什麼地方。 這是我刪除節點的功能,一個我得到

    -1熱度

    1回答

    我正在編寫一個程序來嘗試獲取二叉樹中的樹葉數。我所做的是我檢查了當前ptr是否是一片葉子,如果不是,繼續前往下一個子樹。但是,當我運行它時,它不斷返回2.我做錯了什麼? 我沒有包含源代碼,因爲它相對標準(具有rLink,lLink等)。 template <class elemType> long int bSearchTreeType<elemType>::getLeaves(nodeType