стек — C ++ LIFO очередь, простой простой пример из FIFO в LIFO

Как я могу сделать это для LIFO-> последний в очереди первым?
Есть ли простой способ сделать это?
Это FIFO-> fifo в очереди на выход.

using namespace std;

int main(){
queue<string> q;

cout << "Pushing one two three four\n";
q.push("one");
q.push("two");
q.push("three");
q.push("four");

cout << "Now, retrieve those values in FIFO order.\n";
while(!q.empty()) {
cout << "Popping ";
cout << q.front() << "\n";
q.pop();
}
cout << endl;

return 0;
}

-1

Решение

Вы можете использовать стек, это LIFO

#include <stack>
#include <string>

using namespace std;
int main()
{
stack<string> q;

cout << "Pushing one two three four\n";
q.push("one");
q.push("two");
q.push("three");
q.push("four");

cout << "Now, retrieve those values in LIFO order.\n";
while (!q.empty()) {
cout << "Popping ";
cout << q.top() << "\n";
q.pop();
}
cout << endl;

return 0;
}

Output:
Pushing one two three four
Now, retrieve those values in LIFO order.
Popping four
Popping three
Popping two
Popping one
2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]