Prueba de algoritmos | SP Concurso 3 | Pregunta 4

¿Qué hace la siguiente función en general?

void fun(Queue *Q)
{
    Stack S; // Say it creates an empty stack S
  
    // Run while Q is not empty
    while (!isEmpty(Q))
    {
        // deQueue an item from Q and
        // push the dequeued item to S
        push(&S, deQueue(Q));
    }
  
    // Run while Stack S is not empty
    while (!isEmpty(&S))
    {
    // Pop an item from S and enqueue
    // the poppped item to Q
    enQueue(Q, pop(&S));
    }
}

(A) Elimina el último elemento de la cola, Q
(B) Mantiene la cola, Q igual que antes de la llamada
(C) Hace que la cola Q esté vacía
(D) Invierte la cola Q

Respuesta: (D)
Explicación: La función toma una cola Q como argumento. Saca todos los elementos de Q y los empuja a una pila S. Luego saca todos los elementos de S y los vuelve a poner en cola en Q. Dado que la pila es orden LIFO, todos los elementos de la cola se invierten.
Cuestionario de esta pregunta
Comente a continuación si encuentra algo incorrecto en la publicación anterior

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *