Notas de pincel (cuatro): uso de la pila para alcanzar la cola

Notas de pincel (cuatro): uso de la pila para alcanzar la cola

Descripción del título

Use dos pilas para implementar una cola para completar las operaciones Push y Pop de la cola. Los elementos en la cola son de tipo int.

Idea: una pila stack1 como push, empujar los elementos de la cola en la pila; otra pila stack2 como pop, cuando el equipo no está vacío, luego pop directamente los elementos en la pila, si está vacío , Debe hacer estallar los elementos en stack1 uno por uno, y luego empujar a stack2.

class Solution
{
public:
    void push(int node) {
        stack1.push(node);
    }

    int pop() {
        int a;
        if(stack2.empty())
        {
            while(!stack1.empty())
              {
                stack2.push(stack1.top());
                stack1.pop();   
              }
        }
        a=stack2.top();
        stack2.pop();
        return a;
    }

private:
    stack<int> stack1;
    stack<int> stack2;
};

 

Publicado 36 artículos originales · 19 alabanzas · 20,000+ visitas

Supongo que te gusta

Origin blog.csdn.net/GJ_007/article/details/105396853
Recomendado
Clasificación