首页 > 代码库 > 简单的栈和队列

简单的栈和队列

 1 /*
 2 入门之栈(Stack)和队列(Queue)
 3 在C++中STL中预置了<stack>和<queue>
 4 简单介绍栈和队列的思想和使用方法
 5 栈:先入后出(LIFO),可以理解为将球放进一个一段封闭的管子,只能从入口区出,先进的球只能最后出来
 6 队列:先入先出(FIFO),可以理解为将球放进不封闭的管子,球从另一端出来,先进的球先出
 7 常见应用:栈可以用于深搜(DFS),队列可以用于宽搜(BFS)
 8 只有看看例子就可以很好的理解栈和队列了,简单的先介绍这些
 9 */
10 #include<iostream>
11 #include<stack>
12 #include<queue>
13 using namespace std;
14 stack<int>a;
15 queue<int>b;
16 int main()
17 {
18     int c[] = {1,2,3};
19     for(int i=0; i<3; ++i)
20     {
21         a.push(c[i]);//入栈
22         cout << a.top() << endl;
23     }
24     for(int i=0; i<3; ++i)
25     {
26         cout << a.top() << endl;
27         a.pop();//出栈
28     }
29     cout << endl;
30     for(int i=0; i<3; ++i)
31     {
32         b.push(c[i]);//入队列
33         cout << b.front() << endl;
34     }
35     for(int i=0; i<3; ++i)
36     {
37         cout << b.front() << endl;
38         b.pop();//出队列
39     }
40     return 0;
41 }

 

简单的栈和队列