-
MyQueue.cpp #include<iostream> #include "MyQueue.h" using namespace std; MyQueue::MyQueue(int queueCapacity) { m_iQueueCapacity = queueCapacity; m_iHead = 0; m_iTail = 0; m_iQueueLen = 0; m_pQueue = new int[queueCapacity]; } MyQueue::~MyQueue() { delete [] m_pQueue; m_pQueue = NULL; } void MyQueue::ClearQueue() { m_iHead = 0; m_iTail = 0; m_iQueueLen = 0; } bool MyQueue::QueueEmpty() const { return m_iQueueLen == 0 ? true : false; } bool MyQueue::QueueFull() const { return m_iQueueCapacity == m_iQueueLen ? true : false; } int MyQueue::QueueLength() const { return m_iQueueLen; } bool MyQueue::EnQueue(int element) { if (QueueFull()) return false; m_pQueue[m_iTail] = element; m_iTail++; m_iTail = m_iTail % m_iQueueCapacity; m_iQueueLen++; return true; }查看全部
-
MyQueue.h class MyQueue { public: MyQueue(int queueCapacity); // 初始化隊(duì)列,創(chuàng)建對(duì)壘 virtual ~MyQueue(); // 銷毀隊(duì)列 void ClearQueue(); // 清空隊(duì)列 bool QueueEmpty() const; // 判空隊(duì)列 bool QueueFull() const; // 判滿隊(duì)列 int QueueLength() const; // 隊(duì)列長(zhǎng)度 bool EnQueue(int element); // 入隊(duì)操作 bool DeQueue(int &element); // 出隊(duì)操作 void QueueTravese(); // 遍歷隊(duì)列 private: int *m_pQueue; // 隊(duì)列數(shù)組指針 int m_iQueueLen; // 隊(duì)列元素個(gè)數(shù) int m_iQueueCapacity; // 隊(duì)列數(shù)組容量 int m_iHead; // 隊(duì)列頭指針 int m_iTail; // 隊(duì)列尾指針 };查看全部
-
環(huán)形隊(duì)列屏蔽了普通隊(duì)列的缺點(diǎn)順逆時(shí)針查看全部
-
普通隊(duì)列有兩種情況:1.隊(duì)列往前走像買火車票不浪費(fèi)內(nèi)存但是費(fèi)事,2.售票員走浪費(fèi)內(nèi)存查看全部
-
隊(duì)列像排隊(duì)買火車票第一個(gè)人叫隊(duì)頭最后一個(gè)人叫隊(duì)尾,售票員從隊(duì)頭開始逐一賣票查看全部
-
隊(duì)列是先入先出的數(shù)據(jù)模型查看全部
-
數(shù)據(jù)結(jié)構(gòu)是數(shù)據(jù)的集合和數(shù)據(jù)之間的一種關(guān)系查看全部
-
數(shù)據(jù)結(jié)構(gòu)查看全部
-
環(huán)形隊(duì)列:每當(dāng)隊(duì)列頭騰出位置,后續(xù)再排隊(duì)時(shí),隊(duì)列尾可以繼續(xù)排在騰出的對(duì)列頭的位置上,高效利用內(nèi)存空間。查看全部
-
隊(duì)列分為:普通隊(duì)列,環(huán)形隊(duì)列查看全部
-
設(shè)計(jì)一個(gè)隊(duì)列的基本過程查看全部
-
數(shù)據(jù)結(jié)構(gòu)是指相互之間存在一種或多種 特定關(guān)系 的數(shù)據(jù)元素的 集合查看全部
-
用new來定義數(shù)組 是用[]而不是()查看全部
-
隊(duì)列分為普通隊(duì)列和環(huán)形隊(duì)列查看全部
-
先入先出查看全部
舉報(bào)
0/150
提交
取消