aplicación de colas utilizando la siguiente pila:
push (x) - x elementos en la pila
pop () - quitar la parte superior de la pila
superior () - Obtiene el elemento superior
el tanque vacío () - Devuelve la pila está vacía
Nota:
Sólo puede utilizar el funcionamiento básico de la cola - que es, empujar hacia atrás, ojeada / pop de frente, tamaño, y está vacía de estas operaciones son legales.
El idioma que está utilizando no sea compatible con cola. Puede utilizar la lista o la deque (deque) para simular una cola, la cola, siempre y cuando la operación a la norma.
Usted puede asumir que todas las operaciones son válidos (por ejemplo, a una pila vacía no llama a la operación pop o superior).
Enviado por 70,324 veces 45.211 veces
Fuente: Botón de estancia (LeetCode)
enlace: https: //leetcode-cn.com/problems/implement-stack-using-queues
clase MyStack { público : / * * Inicializar la estructura de datos aquí. * / Cola < int > a; cola < int > b; MyStack () { } / * * x elemento de empuje en la pila. * / Void push ( int x) { b.push (x); mientras que (! {a.empty ()) int y = a.front (); b.push (y); Un estallido(); } , Mientras que (! B.empty ()) { inty = b.front (); a.push (y); b.pop (); } } / * * Elimina el elemento en la parte superior de la pila y devuelve dicho elemento. * / Int pop () { int y = a.front (); Un estallido(); volver y; } / * * Obtener el elemento superior. * / Int superior () { retorno a.front (); } / * * Indica si la pila está vacía. * / Bool vaciar () { retorno a.empty (); } }; / * * * Su objeto MyStack se creará una instancia y llamó como tal: * * MyStack obj = new MyStack (); * Obj-> push (x); * Int param_2 = obj-> pop (); * Int param_3 = obj-> top (); * Bool param_4 = obj-> vaciar (); * /