目前暫不支援動態大小,支援指定大小與預設大小,主要包含元素的插入,棧頂的訪問與彈出,首尾位址的獲取
/* 模擬棧的基本實現*/
#ifndef __stack__
#define __stack__
#include
using namespace std;
#include
#include
using namespace std;
template
class stack ;
template
stack::stack(int n)
template
stack::stack()
template
stack::~stack()
delete stack; cout << "棧已清除\n"; stack = null; }
template
type stack::pop()
if (top == -1)
top--;
return stack[top + 1]; }
template
type stack::front()
if (top == -1)
return stack[top]; }
template
void stack::insert(type num)
if (top == max - 1)
cout << "insert stack successful the num is " << num << endl;
stack[++top] = num; }
template
int stack::size()
return top + 1;
} //棧的元素個數
template
bool stack::empty()
template
void stack::clear()
#endif //stack
功能相對簡陋,有改進的意見,歡迎各路大神提出.
C 實現的棧 非STL
棧的實現 包括 動態擴容 刪除 遍歷 插入元素?模板類 整就完事了 就沒用stl了 棧 include包括的標頭檔案就是常見的標頭檔案 就不再新增了 template typename t class stack stack void pushelem t a t popelem void show...
STL 簡單 vector 的實現
stl 簡單 vector 的實現 我用vs2013寫的程式 github vector版本的 位於 我是照著侯捷老師的 stl原始碼剖析 做的cghstl,現在才看到第三章,覺得這本書的編排非常適合自學。第一章講解空間配置器,這是stl最基礎的部件,沒什麼好說的。第二章講解迭代器,老師舉了單向鍊錶...
棧的簡單實現
設棧採用順序儲存結構 用動態陣列 請編寫棧的各種基本操作的實現函式 棧的動態陣列順序儲存結構可定義如下 struct stack 棧的基本操作可包括 void initstack stack s 構造乙個空棧 s int emptystack stack s 若棧s 為空棧返回 1,否則返回0 vo...