程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> 關於C++ >> C++ STL學習——stack

C++ STL學習——stack

編輯:關於C++

棧是最為常用的數據結構了,很多算法都是依靠棧來實現的,比如遞歸。我們要手動來實現棧,顯得十分繁瑣和麻煩,而且復用性不好。C++ 的STL中已經幫我們封裝好了棧,我們只要方便的進行調用即可。該篇博客主要介紹STL 中stack的使用,stack應該說是STL中最簡單的容器了。實例代碼上傳至 https://github.com/chenyufeng1991/STL_stack 。

 

(1)首先引入頭文件 #include .並使用命名空間:using namespace std;

(2)需要注意的是,stack不提供任何的迭代器操作。因為stack不能進行隨機訪問,也不能進行遍歷,它只能訪問棧頂的元素。

(3)創建stack

    stack stack1; // 默認構造函數
    stack stack2(stack1); // 復制構造函數
(4)push(): 入棧
    stack1.push(2);
    stack1.push(4);
    stack1.push(6);
(5)top(): 訪問棧頂元素
cout << "頂部元素為:" << stack1.top() << endl;
僅僅只是獲取棧頂元素的值。

(6)pop():出棧
stack1.pop(); // 出棧操作是不返回棧頂元素的
(7)empty():判斷棧是否為空
 cout << "stack是否為空:" << stack1.empty() << endl;
返回1表示stack為空,0表示不為空。

(8)size():獲取當前stack中元素個數

 cout << "stack.size:" << stack1.size() << endl;

棧作為最簡單的數據結構,我們一定要好好掌握。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved