avl-tree

    3熱度

    1回答

    我對Rust很新,想要實現一個AVL樹。 我使用以下枚舉來表示我的樹: enum AvlTree<T> { Leaf, Node { left: Box<AvlTree<T>>, right: Box<AvlTree<T>>, value: T } } 在實現的平衡功能之一,我面臨着一些問題,所有權和借貸。 我想寫一個函數,它

    2熱度

    1回答

    我正在與AVL樹一起工作。 我需要用散列標識任何給定的樹,以構建散列,我正在考慮尋找樹中所有元素的前序遍歷,然後通過連接每個元素的散列來構建散列。 首先,我想確保沒有重複的AVL樹對於相同的預訂字符串。儘管我還沒有找到一個反例,但我真的不太確定。 任何幫助表示讚賞!

    1熱度

    1回答

    我正在學習AVL樹並得到了遞歸代碼中的TLE。我的導師建議迭代解決方案。我搜索並找到了一個將父節點保存在子節點中的解決方案。 我想知道這個可能會在內存中遇到問題,不是嗎? 是否有另一種方式插入,在AVL樹中刪除什麼不需要保存父項在孩子?請給我一個提示。

    0熱度

    1回答

    我在C#中製作了一個功能非遞歸AVL樹。該節點看起來像這樣: class AvlNode { public int data; public int balance; public AvlNode left; public AvlNode right; public AvlNode parent; }static AvlNode _root

    1熱度

    1回答

    我學習考試,我也使用我們的腳本來學習。我同意所有的步驟,但我不明白紅色的圓圈)我會爲你閱讀)。因爲有樹根餘額-1。這怎麼可能是正確的? 根10的左子樹的平衡是-4,它的右子樹具有平衡+2,所以我們共-4+2 = -2 = unbalanced after insertion of 8。但是,我們的教授如何得到-1? 我明白這裏有什麼問題嗎?

    0熱度

    2回答

    我無法理解爲什麼下面的樹輪代碼有效。如果T2指向y.left和y.left指向x,這是不是使最後一個指配x.right = T2等於x.right = x?指針是不是應指向最初的T2? Node leftRotate(Node x) { Node y = x.right; Node T2 = y.left; // Perform rotation y.le

    2熱度

    1回答

    如果C表示的「獨苗」的節點數量(一個節點被稱爲唯一的孩子時,其父是不是null & &它沒有兄弟姐妹),爲什麼我們的,對於每一個AVL樹與N個節點:C < =(N/2)?

    0熱度

    2回答

    我有一個需要存儲兩個變量的AVL樹的一個項目:一個字和速度,它被用於: struct AVLnodo { float peso; int FB; char *palavra; struct AVLnodo* esq; struct AVLnodo* dir; }; 注: 比索=使用的速率 palavra =字 其他變量是指向兒童和因素的平衡。

    0熱度

    1回答

    我想插入一個帶有泛型元素的矢量到AVL樹中而不使用旋轉,這可能嗎?

    2熱度

    2回答

    我有一個演講幻燈片說如下: 要查找AVL樹中的中間元素,我按順序遍歷元素,直到它到達moddile元素。它需要O(N)。 如果我正確地知道,在樹結構中,查找元素需要基2 O(logn),因爲AVL是始終分爲2個子元素的二叉樹。 但爲什麼說O(N)?