/*! *Realiza uma rotação simples à direita e retorna o resultado da rotação. * @param nodo O nodo que será rebalanceado. */ NoAVL<T>* simp_roda_dir(NoAVL<T>* nodo) { NoAVL<T>* temporario; temporario = nodo->getDireita(); nodo->direita = temporario->getEsquerda(); temporario->esquerda = nodo; this->atualizaAltura(temporario); this->atualizaAltura(nodo); return temporario; }
NoAVL<T>* NoAVL<T>::rotacaoSimplesDireita(NoAVL<T>* X) { NoAVL<T>* Y; Y = X->getDireita(); X->direita = Y->getEsquerda(); Y->esquerda = X; this->atualizaAltura(Y); this->atualizaAltura(X); return Y; }