Un algoritmo que hice para ordenar una pila de enteros (Stack) solo con los metodos apilar, desapilar, cima y esVacia

public void ordenar()
{
        PilaBasica pAux = new PilaBasica();
        int index = 0;

        while( index < length() )
        {
            int menor = cima();
            int jj = length();
       
            while( jj > index )
            {
                if( cima() <= menor )
                {
                    menor = cima();
                }
               
                pAux.agregar( cima() );
                quitar();
               
                jj--;
            }
           
            agregar( menor );
           
            // tiro todo lo demas arriba
            while( !pAux.esVacia() )
            {
                if( pAux.cima() != menor )
                {
                    agregar( pAux.cima() );
                    pAux.quitar();
                }
                else
                    pAux.quitar();
            }
           
            index++;
        }   
    }

Comentarios

Entradas populares de este blog

El juego del ahorcado, escrito en assembler i8086

Una posible implementacion en modo texto de una sopa de letras con python ( 2013 )

ayuda memoria sobre conversion dinamica descendente y polimorfismo