Título: Funcion clonar Publicado por: rvilla777 en 2 Mayo 2010, 19:21 pm Hola tengo una duda sobre pilas dinamicas, debo crear un funcion clonar para una pila, pero no tengo idea como se puede realizar dicha funcion?, me orientan ? gracias.
Título: Re: Funcion clonar Publicado por: biribau en 2 Mayo 2010, 20:35 pm Una implementación muy sencilla, pero poco astuta(naive, ingenua) es sacar cada elemento, y pushearlo en otra pila, así le darás la vuelta a la pila.
Después sacas otra vez cada elemento de la nueva pila y pusheas el elemento en 2 pilas nuevas. Supongo que te refieres a pilas LIFO, con FIFO funcionaría pero podría eliminarse el primer bucle, o sea, tal como está vale para ambas. Código: PILA pila_auxiliar = PILA(); Título: Re: Funcion clonar Publicado por: Gallu en 2 Mayo 2010, 21:34 pm No sería mejor utilizar un vector para guardar los datos de la pila que se quiere clonar y luego rellenar la nueva pila con la info del vector pero en el orden inverso en que se fue almacenando ?
Título: Re: Funcion clonar Publicado por: biribau en 2 Mayo 2010, 21:37 pm Bueno, más o menos es lo mismo, como no dijo nada de las operaciones de su pila, planteé una solución con el minimo de operaciones que una pila tiene para poder llamarse pila: push, pop, y constructor. Sólo que el vector que tú usarías es mi pila auxiliar
Título: Re: Funcion clonar Publicado por: Gallu en 2 Mayo 2010, 21:40 pm Bueno , como tú mismo dijiste , utilizar una pila auxiliar es una manera "poco astuta" de hacerlo ...! ::)
|