Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.util.ArrayList;
- import java.util.Stack;
- /**
- * Created by felipealvarez on 11/5/15.
- * 5. Una clase PilaSofisticada es una Pila, que permite configurar una implementación de pila
- según las necesidades del cliente, y que además define, independientemente de la
- implementación, las siguientes funcionalidades:
- a. agregar(PilaSofisticada p): que permite agregar sobre this la pila p.
- b. PilaSofisticada intercalar(PilaSofisticada nueva): que devuelve el resultado de intercalar los
- elementos de la pila this con la pila nueva.
- */
- public class SuperPila extends Stack {
- public SuperPila(){
- super();
- }
- public void agregar(SuperPila p){
- ArrayList temp = new ArrayList();
- while (!p.isEmpty()){
- temp.add(p.pop());
- }
- for (int i = (temp.size() - 1); i >= 0; i--){
- this.push(temp.get(i));
- }
- while (!this.isEmpty()){
- System.out.println(this.pop());
- }
- }
- //intercalar no funciona :(
- public void intercalar(SuperPila n){
- SuperPila pilaResultado = new SuperPila();
- for (int i = 0; i < this.size(); i++) {
- if (i%2 != 0){
- pilaResultado.push(this.pop());
- } else {
- pilaResultado.push(n.pop());
- }
- }
- while (!pilaResultado.isEmpty()){
- System.out.println(pilaResultado.pop());
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement