1. 程式人生 > >c++容器stack的用法整理

c++容器stack的用法整理

c++ stl棧stack介紹C++ Stack(堆疊) 是一個容器類的改編,為程式設計師提供了堆疊的全部功能,——也就是說實現了一個先進後出(FILO)的資料結構。c++ stl棧stack的標頭檔案為:#include <stack>c++ stl棧stack的成員函式介紹操作 ...

c++ stl棧stack介紹

C++ Stack(堆疊) 是一個容器類的改編,為程式設計師提供了堆疊的全部功能,——也就是說實現了一個先進後出(FILO)的資料結構。

c++ stl棧stack的標頭檔案為

#include <stack> 

c++ stl棧stack的成員函式介紹

操作比較和分配堆疊

empty()堆疊為空則返回真

pop()移除棧頂元素

push()在棧頂增加元素

size()返回棧中元素數目

top()返回棧頂元素

c++ stl棧stack用法程式碼舉例1

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 #include "stdafx.h"   #include <stack>   #include <vector>   #include <deque>   #include <iostream>   using namespace std;   int _tmain(int argc, _TCHAR* argv[])   {   deque<int> mydeque(2,100);   vector<int> myvector(2,200);   stack<int> first;   stack<
int> second(mydeque);   stack<int,vector<int> > third;   stack<int,vector<int> > fourth(myvector);   cout << "size of first: " << (int) first.size() << endl;   cout << "size of second: " << (int) second.size() << endl;   cout << 
"size of third: " << (int) third.size() << endl;   cout << "size of fourth: " << (int) fourth.size() << endl;   return 0;   }

c++ stl棧stack用法程式碼舉例2

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 // stack::empty   #include <iostream>   #include <stack>   using namespace std;   int main ()   {   stack<int> mystack;   int sum (0);   for (int i=1;i<=10;i++) mystack.push(i);   while (!mystack.empty())   {   sum += mystack.top();   mystack.pop();   }   cout << "total: " << sum << endl;   return 0;   }

 c++ stl棧stack用法程式碼舉例3

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 // stack::push/pop   #include <iostream>   #include <stack>   using namespace std;   int main ()   {   stack<int> mystack;   for (int i=0; i<5; ++i) mystack.push(i);   cout << "Popping out elements...";   while (!mystack.empty())   {   cout << " " << mystack.top();   mystack.pop();   }   cout << endl;   return 0;   }

 c++ stl棧stack用法程式碼舉例4

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 #include <iostream>   #include <stack>   using namespace std;   int main ()   {   stack<int> mystack;   for (int i=0; i<5; ++i) mystack.push(i);   cout << "Popping out elements...";   while (!mystack.empty())   {   cout << " " << mystack.top();   mystack.pop();   }   cout << endl;   return 0;   }