資料結構與演算法(C語言版) 鏈式佇列

2021-07-25 15:32:55 字數 1037 閱讀 1058

用鍊錶做的佇列

先進先出

使用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語言版 嚴蔚敏教授嚴奶奶的書籍配套軟體 她的書看著很枯燥乏味,但真的非常嚴謹,嚴奶奶也很貼心的做了乙個...