int main(void) { TAVLCom a; TComplejo c; TComplejo d33(33, 33), d78(78, 78); for(int i = 1; i <= 100; i++) { c.Re(i); c.Im(i); a.Insertar(c); } cout << "Nodos: " << a.Nodos() << endl; a.Borrar(d33); cout << "Nodos: " << a.Nodos() << endl; a.Borrar(d78); cout << "Nodos: " << a.Nodos() << endl; if(a.Buscar(d33)) cout << "Si" << endl; else cout << "No" << endl; if(a.Buscar(d78)) cout << "Si" << endl; else cout << "No" << endl; }
int main(void) { TComplejo a; TComplejo b(a); TComplejo c; c = a; if(a != b) cout << "SI" << endl; else cout << "NO" << endl; c.Re(1); if(a != c) cout << "SI" << endl; else cout << "NO" << endl; return 0; }
int main(void) { TAVLCom a; TComplejo c; for(int i = 1; i <= 1000; i++) { c.Re(i); c.Im(i); a.Insertar(c); } cout << "Nodos: " << a.Nodos() << endl; for(int i = 1; i <= 1000; i++) { c.Re(i); c.Im(i); a.Borrar(c); } cout << "Nodos: " << a.Nodos() << endl; }
bool TComplejo::Comparar (TComplejo &c) //true: izquierda -- false: derecha { bool salida; if (this->Mod() < c.Mod()) { salida = true; } else if (this->Mod() > c.Mod()) { salida = false; } else { if (this->Re() > c.Re()) { salida = false; } else if (this->Re () < c.Re()) { salida = true; } else { if (this->Im() > c.Im()) { salida = false; } else if (this->Im () < c.Im()) { salida = true; } } } return (salida); }
int TA234Nodo::Comparar (TComplejo c) { if (tipo_nodo == 1 && hijoIz.raiz != NULL && hijoMeIz.raiz != NULL) { if (c == itIz) { return 0; } else if (c.Comparar(itIz)) { return 1; } else { return 2; } } else if (tipo_nodo == 2 && hijoIz.raiz != NULL && hijoMeIz.raiz != NULL && hijoMeDe.raiz != NULL) { if (c == itIz || c == itMe) { return 0; } else if (c.Comparar(itIz)) { return 1; } else if (c.Comparar (itMe)) { return 2; } else { return 3; } } else if (tipo_nodo == 3 && hijoIz.raiz != NULL && hijoMeIz.raiz != NULL && hijoMeDe.raiz != NULL && hijoDe.raiz != NULL) { if (c == itIz || c == itMe || c == itDe) { return 0; } else if (c.Comparar(itIz)) { return 1; } else if (c.Comparar (itMe)) { return 2; } else if (c.Comparar (itDe)) { return 3; } else { return 4; } } else { return 5; } }
bool TA234Nodo::InsertarAux (TComplejo c) { bool salida = false; if (tipo_nodo == 1) { if (c != itIz) { if (c.Comparar (itIz)) { itDe = itMe; itMe = itIz; itIz = c; } else { itDe = itMe; itMe = c; } tipo_nodo++; salida = true; } } else if (tipo_nodo == 2) { if (c != itIz && c != itMe) { if (c.Comparar (itIz)) { itDe = itMe; itMe = itIz; itIz = c; } else if (c.Comparar (itMe)) { itDe = itMe; itMe = c; } else { itDe = c; } salida = true; tipo_nodo++; } } return (salida); }
bool TA234Com::Buscar (TComplejo c) { bool salida = false; if (!EsVacio()) { if (raiz -> tipo_nodo == 1) { if (c == raiz -> itIz) { salida = true; } else { if (c.Comparar (raiz -> itIz)) { salida = raiz -> hijoIz.Buscar(c); } else { salida = raiz -> hijoMeIz.Buscar(c); } } } else if (raiz -> tipo_nodo == 2) { if (c == raiz -> itIz || c == raiz -> itMe) { salida = true; } else { if (c.Comparar (raiz -> itIz)) { salida = raiz -> hijoIz.Buscar (c); } else { if (c.Comparar (raiz -> itMe)) { salida = raiz -> hijoMeIz.Buscar (c); } else { salida = raiz -> hijoMeDe.Buscar (c); } } } } else if (raiz -> tipo_nodo == 3) { if (c == raiz -> itIz || c == raiz -> itMe || c == raiz -> itDe) { salida = true; } else { if (c.Comparar (raiz -> itIz)) { salida = raiz -> hijoIz.Buscar (c); } else { if (c.Comparar (raiz -> itMe)) { salida = raiz -> hijoMeIz.Buscar (c); } else { if (c.Comparar (raiz -> itDe)) { salida = raiz -> hijoMeDe.Buscar (c); } else { salida = raiz -> hijoDe.Buscar (c); } } } } } } return (salida); }