Buenas. Tengo una duda con un código de c++, en el cual utilizo pilas y colas, básicamente tengo que construir una pila y un diccionario, ambos de caracteres, para cada carácter perteneciente a la pila verificar si está en el diccionario, y si la respuesta es positiva el carácter debe ser ingresado en una cola (inicialmente vacía), en caso contrario debe ser descartado.
Esto es lo que llevo:
#include <iostream>
#include <stack>
#include <queue>
using namespace std;
int main ()
{
stack <string> pila;
pila.push("Palabra1");
pila.push("Palabra2");
pila.push("Palabra3");
pila.push("Palabra4");
cout << "Hay en total " << pila.size () << " palabras en el diccionario" << endl;
cout<<endl;
cout << "Palabras en el diccionario: ";
while(!pila.empty()) {
cout <<endl<< pila.top() << endl;
pila.pop();
}
string diccionario[] = {"Palabra1", "Palabra2", "Palabra3", "Palabra4"};
cout<<"Verificando si las palabras de la pila se encuentran en el diccionario"<<endl;
cout<<"Opciones: Palabra1, Palabra2, Palabra3, Palabra4"<<endl;
cout<<endl;
//Aqui deberia hacer la comparacion entre la pila y el diccionario para luego agregar los valores a la cola
queue <string> cola;
//estas serian las sentencias si se encontrara la palbra en el diccionario
cout<<"La palabra introducida se encuentra en el diccionario"<<endl;
cout<<"Se procedera a introducirla en la cola"<<endl;
cola.push("Palabra1"); } else {
cout<<"La palabra no se encuentra en el diccionario por lo tanto no se agregara a la cola"<<endl;}
while(!cola.empty()) {
cout <<endl<< cola.front() << endl;
cola.pop(); }
system("pause");
}
Mi duda vendría siendo como comparar la pila y el "diccionario" que no sé si sería útil crearlo como un array o como otra pila o cola, ya que no me especifican si el diccionario debe ser una pila, cola o array. Muchas gracias por sus respuestas