我在网上看到的所有内容都描述了stack.cpp文件的实现以及如何包含使用您自己的实现的stack.h文件。当我在python中使用堆栈或队列时,它只是:
from queue import *
我不关心如何实现堆栈或队列,我只需要使用一个。上面的C ++中的python代码是什么?或者我真的必须在这里实现我自己的堆栈和队列吗?
答案 0 :(得分:2)
答案 1 :(得分:2)
#include <stack>
#include <queue>
会给你
std::stack<T>
和
std::queue<T>
分别
答案 2 :(得分:2)
C ++中有容器适配器std::stack
,std::queue
和std::priority_queue
。它们在标题<stack>
和<queue>
中相应声明。您只需要包含适当的标题。例如
#include <stack>
答案 3 :(得分:0)
堆栈中允许执行以下操作
空,大小,后退,push_back,pop_back
堆栈的例子
#include <iostream> // std::cout
#include <stack> // std::stack
int main ()
{
std::stack<int> mystack;
for (int i=0; i<5; ++i) mystack.push(i);
std::cout << "Popping out elements...";
while (!mystack.empty())
{
std::cout << ' ' << mystack.top();
mystack.pop();
}
std::cout << '\n';
return 0;
}
队列中允许执行以下操作
空,大小,前,后,后推,pop_front
队列示例
#include <iostream> // std::cin, std::cout
#include <queue> // std::queue
int main ()
{
std::queue<int> myqueue;
int myint;
std::cout << "Please enter some integers (enter 0 to end):\n";
do {
std::cin >> myint;
myqueue.push (myint);
} while (myint);
std::cout << "myqueue contains: ";
while (!myqueue.empty())
{
std::cout << ' ' << myqueue.front();
myqueue.pop();
}
std::cout << '\n';
return 0;
}
有关详细信息和示例