插入红黑树不能正常工作

时间:2016-03-06 15:09:15

标签: java eclipse binary-tree red-black-tree

我的RedBlackTree中的插入功能有问题。 由于某种原因,它不会停止(堆栈溢出)。 我试过调试程序超过2个小时,我还没有找到问题的解决方案。 谢谢你的帮助:)

public void Insert(RedBlackNode z,RedBlackTree tree)
{
    RedBlackNode x = tree.head;
    RedBlackNode y = tree.nullNode;
    while (x != tree.nullNode && x!=null)
    {
        y = x;
        if(z.bankNum < x.bankNum)
            x = x.left;
        else
            x = x.right;
    }

    z.father = y;

    if(y == tree.nullNode){
        tree.head = z;
    }
    else {
        if(z.bankNum <y.bankNum)
        y.left = z;
    else
        y.right = z;
    }
    z.left = tree.nullNode;
    z.right = tree.nullNode;
    z.color = this.RED;
    tree.InsertFixup(z);
}

0 个答案:

没有答案