如何显示我的队列&堆?

时间:2016-04-09 23:27:29

标签: c++ data-structures stack queue

我想显示我的EvenQueue,EvenStack,OddQueue& EvenQueue?我已经尝试了一些方法,但编译器给了我一些错误。 任何帮助将不胜感激......或任何提示。

#include <iostream>
#include <stack>
#include <queue>
using namespace std;

int main()
{
  stack<int> OddStack;
  queue<int> OddQueue;

  stack<int> EvenStack;
  queue<int> EvenQueue;

  int MyNumbers[10];
  int InNum;

for(int i = 0; i < 10; i++)
{
    cout << "Enter Number " << i << ": ";
    cin >> InNum;

    MyNumbers[i] = InNum;

    if(InNum % 2 == 0)
    {
        EvenQueue.push(InNum);
        EvenStack.push(InNum);
    }

    else
    {
        OddQueue.push(InNum);
        OddStack.push(InNum);
    }
}

cout << "Stack" << "\t\t" << "Queue" << endl;

 return 0;
}

1 个答案:

答案 0 :(得分:1)

将其分配给tempstack

stack<int>tempStack = OddStack

然后从它开始弹出,看看里面是什么

while(tempStack.empty() == false){
  int x = tempStack.top();
  cout << x << endl;
  tempStack.pop();
}

同样适用于队列