Красные чёрные деревья — метод FixItUp (для вращений)

Я получаю эту странную ошибку. в основном я нашел псевдокод из книги и решил реализовать эту функцию в своем красном черном дереве.
Вот код:

void InsertFixtUp(Node<Key,Item> * z)
{
Node<Key,Item> * y = 0;
if(z->parent != 0)
{
while (z->parent->colour==RED){ // first Error here
if (z->parent==z->parent->parent->left){
y=z->parent->parent->right;
if(y->colour==RED) {
//Case 1
z->parent->colour = BLACK;
y->colour=BLACK;
z->parent->parent->colour=RED;
z = z->parent->parent;
} else if (z==z->parent->right){
//Case 2
z=z->parent;
RotateLeft(z);
}
//Case 3
z->parent->colour=BLACK;
z->parent->parent->colour=RED;
RotateRight(z->parent->parent);
} else if (z->parent==z->parent->parent->right){
y=z->parent->parent->left;
if(y->colour==RED) {
//Case 1
z->parent->colour = BLACK;
y->colour=BLACK;
z->parent->parent->colour=RED;
z = z->parent->parent;
} else if (z==z->parent->left){
//Case 2
z=z->parent;
RotateRight(z);
}
//Case 3
z->parent->colour=BLACK;
z->parent->parent->colour=RED;
RotateLeft(z->parent->parent);
}
}
root->colour=BLACK;
}
}

первая ошибка в списке expected ‘)’ before ‘;’ tokenв первом цикле. что подразумевается под этой ошибкой?

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]