資料結構與演算法 順序佇列

2021-10-02 16:03:09 字數 1130 閱讀 1361

queue.h

#ifndef _queul_h

#define _queue_h

#includeusing namespace std;

templateclass queue

;templatequeue::queue(int queuecapacity) : capacity(queuecapacity)

templateinline bool queue::isempty() const

//此順序佇列在設計時第0個位置空閒,開始時從第乙個下標開始

templatevoid queue::push(const t& item)

else //front的位置發生了移動,說明發生了回環

front = 0;

//front = 2*capacity - 1;

rear = capacity - 1;

//rear = capacity - 2;

capacity *= 2;

delete queue;

queue = newqueue;

} // if(rear == capacity-1)

// rear = 0;

// else

// rear++;

rear = (rear + 1) % capacity; //高水平

資料結構與演算法 006 順序佇列

一 佇列的概念 佇列 簡稱作隊,queue 也是一種特殊的線性表,佇列的資料元素以及資料元素間的邏輯關係和線性表完全相同,其差別是線性表允許在任意位置插入和刪除,而佇列只允許在其一端進行插入操作在其另一端進行刪除操作。佇列中允許進行插入操作的一端稱為隊尾,允許進行刪除操作的一端稱為隊頭。佇列的插入操...

資料結構與演算法之順序佇列

本程式能夠對使用者的輸入做了合理的處理使得使用者想要刪除超過本佇列的最大容量時會提醒使用者該操作錯誤,從而讓使用者重新輸入,更人性化的提供了兩種刪除佇列元素的方法供使用者選擇 完成對佇列的初始化 判斷佇列的空和滿 插入元素 獲取佇列的首元素 刪除元素 銷毀佇列 返回佇列的長度 列印佇列 includ...

資料結構順序佇列

佇列是一種特殊的 線性表,特殊之處在於它只允許在表的前端 front 進行刪除操作,而在表的後端 rear 進行插入操作,和棧一樣,佇列是一種操作受限制的線性表。進行插入操作的端稱為隊尾,進行刪除操作的端稱為隊頭。順序佇列 ifndef sqqueue h define sqqueue h incl...