Ejemplo n.º 1
0
void ArbolBinario::insertarElementoRec(Elemento * nodoActual,
		Elemento * elemento) {
	if (*nodoActual < *elemento) {
		if (nodoActual->hIzq != NULL) {
			insertarElementoRec(nodoActual->hIzq, elemento);
		} else {
			nodoActual->hIzq = elemento;
		}
	} else {
		if (nodoActual->hDer != NULL) {
			insertarElementoRec(nodoActual->hDer, elemento);
		} else {
			nodoActual->hDer = elemento;
		}
	}
}
Ejemplo n.º 2
0
void ArbolBinario::insertarElemento(Elemento * elemento) {
	if (raiz == NULL) {
		raiz = elemento;
	} else {
		insertarElementoRec(raiz, elemento);
	}
}
Ejemplo n.º 3
0
void Lista::insertarElemento(ElementoLista* actual) {

	if (primero == NULL) {
		primero = actual;
	} else {
		insertarElementoRec(primero, actual);
	}
}
Ejemplo n.º 4
0
void ArbolBinario::insertarElementoRec(Elemento * nodoActual,
	Elemento * elemento) {
	if (*nodoActual < *elemento) {
		if (nodoActual->getHijoIzq() != NULL) {
			insertarElementoRec(nodoActual->getHijoIzq(), elemento);
		}
		else {
			nodoActual->setHijoIzq(elemento);
		}
	}
	else {
		if (nodoActual->getHijoDer() != NULL) {
			insertarElementoRec(nodoActual->getHijoDer(), elemento);
		}
		else {
			nodoActual->setHijoDer(elemento);
		}
	}
}
Ejemplo n.º 5
0
void Lista::insertarElementoRec(ElementoLista* actual,
		ElementoLista* insertar) {

	if (actual->siguiente != NULL) {
		insertarElementoRec(actual->siguiente, insertar);
	} else {
		actual->siguiente = insertar;
		insertar->anterior = actual;
	}

}
Ejemplo n.º 6
0
void Lista::insertarFinal(ElementoLista* actual) {
	int p = 0;
	if (primero == NULL) {
		primero = actual;
		ultimo = actual;
		actual->posicion = p;
		cantidadElementos++;
	}
	else {
		insertarElementoRec(primero, actual);
	}

	ordenarPosiciones(primero, 0);

}