private void buscar2(NodoArbolABB raiz, IComparable usuario, String password) { Verificacion = 0; if (raiz == null) { //Console.WriteLine("datos incorrectos"); Verificacion = 0; } else { if (raiz.getNickname().ToString() == usuario.ToString()) { //Console.WriteLine("datos encontrados"); Verificacion = 1; } else if (usuario.CompareTo(raiz.getNickname()) <= 0) { buscar2(raiz.getIzquierdo(), usuario, password); } else { buscar2(raiz.getDerecho(), usuario, password); } } }
public void EliminarNodo(NodoArbolABB valor,IComparable usuario,String Contra, String Email, int Conexion) { if ((valor.getIzquierdo() != null) && (valor.getDerecho() != null)) { //Elimina con 2 hijos //NodoArbolABB minimo = valor.getDerecho().minimo(); //this.setNickname(minimo.getNickname()); //valor.getDerecho().EliminarNodo(valor, minimo.getNickname(), Contra, Email, Conexion); } else if ((valor.getIzquierdo() != null) || (valor.getDerecho() != null)) { //Eliminar con 1 hijo NodoArbolABB sustituto = valor.getIzquierdo() != null ? valor.getIzquierdo() : valor.getDerecho(); this.setNickname(sustituto.getNickname()); this.setIzquierdo(sustituto.getIzquierdo()); this.setDerecho(sustituto.getDerecho()); } else { //Eliminar sin hijos if (valor.getPadre() != null) { //if (raiz == raiz.getPadre().getIzquierdo()) raiz.getPadre().getIzquierdo() = null; if (this == valor.getPadre().getIzquierdo()) valor.getPadre().setIzquierdo(null); if (this == valor.getPadre().getDerecho()) valor.getPadre().setDerecho(null); valor.setPadre(null); } valor = null; } }
private void Reemplazar(NodoArbolABB raiz, IComparable usuario, String contra, String Correo, int IndicadorConexion) { if (raiz != null) { if (raiz.getNicknamee() == usuario.ToString()) { //Console.WriteLine("datos encontrados"); raiz.EliminarNodo(raiz, usuario, contra, Correo, IndicadorConexion); } else if (usuario.CompareTo(raiz.getNickname()) <= 0) { Reemplazar(raiz.getIzquierdo(), usuario, contra, Correo, IndicadorConexion); } else { Reemplazar(raiz.getDerecho(), usuario, contra, Correo, IndicadorConexion); } } }