用鍊錶做的佇列
先進先出
使用c++模板類
動態陣列做可能會浪費空間,但是鍊錶的利用率就比較高,今天用鍊錶做乙個佇列。
在vs2013中新建專案,在標頭檔案中加入queueli.h在原檔案中加入main.cpp
#ifndef queueli_h
#define queueli_h
templateobject>
class queue
};listnode *front;
listnode *back;
};templateobject>
queue::queue()
templateobject>
queue::~queue()
templateobject>
void queue::makeempty()
templateobject>
bool queue::isempty()const
templateobject>
const
object & queue::getfront()const
template object>
void queue::enqueue(const
object &x)
templateobject>
object queue::dequeue()
#endif
#include
#include"queueli.h"
using
namespace
std;
int main()
while (!myq.isempty())
cout
<< myq.dequeue() << endl;
}system("pause");
return
0;}
總結:使用陣列和使用鍊錶做佇列速度都差不多,但是鍊錶的**量比較少,而且鍊錶占用的記憶體也比較少。 資料結構與演算法(C語言版) 鏈式棧
用鍊錶做的堆疊,鍊錶可以動態的建立一些節點,在插入和刪除節點方面要快很多。先進後出棧操作 push入棧 pop出棧 top返回棧頂資料 在vs2013新建專案,在標頭檔案中加入linkedstack.h在原始檔中加入main.cpp ifndef linkedstack h define linke...
資料結構(C語言版) 佇列
1 佇列 在表的一端插入,表的另一端刪除,允許插入的一端為隊尾,允許刪除的一端為隊頭。先進先出fifo。2 佇列的基本操作 initqueue q 構造空佇列 destroyqueue q 銷毀佇列 clearqueue q 清空佇列 queueempty q 判斷佇列是否為空 queuelengt...
C語言版資料結構演算法
c語言版資料結構演算法 c語言資料結構具體演算法 c語言資料結構演示軟體 演算法效率分析 線性表 棧和佇列 串 陣列和廣義表 樹和二叉樹 圖 查表 排序 動態儲存管理 上面兩個鏈結就是 資料結構 c語言版 嚴蔚敏教授嚴奶奶的書籍配套軟體 她的書看著很枯燥乏味,但真的非常嚴謹,嚴奶奶也很貼心的做了乙個...