我一直盯着這一整天,稍微有些地方,但它仍然不能正常工作!只是試圖'插入'(真的插入,或找到它是否存在)一個元素k到一個LL紅黑樹。這是我的方法: Node * RPut(Node* p, const K& k, Node*& location)
{
// if you are at the bottom of the tree,
// add new node at bott
我的紅黑樹算法刪除效果很好,除非我刪除根。哪裏只有一個孩子被保存,其餘的樹值都丟失。 我相信這個問題是在 下面是用於刪除方法的線removeNode()方法: //Searching for value to remove
public void removeSearch(int value)
{
RedBlackNode rt = root;
while (rt !
我正在使用scala.collection.mutable.TreeSet,並遇到一個問題,在調用-=時無法刪除元素。 我的代碼: val discovered = new TreeSet[Position]()(Ordering by { position => estimation(position) })
//Position is defined as: type Position =
我試圖使用算法提供的算法實現紅黑樹,算法第3版。一切工作正常,直到我測試刪除:似乎有算法中的錯誤。我無法找到網絡上的解決方案:其他解決方案(基於第二版算法)在仔細檢查時也失敗。 算法在這裏可以看到: Red-Black-Tree: Introduction to Algorithms (3rd edition) 不工作的算法: RB-DELETE(T, z)
y = z
y-original-