1. 程式人生 > >簡單的棧和隊列

簡單的棧和隊列

出隊 ron cout 好的 出棧 out style 隊列 使用方法

 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 }

簡單的棧和隊列