欧美大屁股bbbbxxxx,狼人大香伊蕉国产www亚洲,男ji大巴进入女人的视频小说,男人把ji大巴放进女人免费视频,免费情侣作爱视频

歡迎來(lái)到入門教程網(wǎng)!

C語(yǔ)言

當(dāng)前位置:主頁(yè) > 軟件編程 > C語(yǔ)言 >

C++數(shù)據(jù)結(jié)構(gòu)之實(shí)現(xiàn)循環(huán)順序隊(duì)列

來(lái)源:本站原創(chuàng)|時(shí)間:2020-01-10|欄目:C語(yǔ)言|點(diǎn)擊: 次

數(shù)據(jù)結(jié)構(gòu)–用C++實(shí)現(xiàn)循環(huán)順序隊(duì)列

  • 隊(duì)列的操作特性:先進(jìn)先出
  • 隊(duì)列中元素具有相同類型
  • 相鄰元素具有前驅(qū)和后繼關(guān)系
  • 設(shè)置隊(duì)頭、隊(duì)尾兩個(gè)指針,以改進(jìn)出隊(duì)的時(shí)間性能

約定:隊(duì)頭指針front指向隊(duì)頭元素的前一個(gè)位置,隊(duì)尾指針rear指向隊(duì)尾元素

為了解決假溢出,我們將存儲(chǔ)隊(duì)列的數(shù)組頭尾相接,從而產(chǎn)生了循環(huán)隊(duì)列。

如何判斷循環(huán)隊(duì)列隊(duì)空?

隊(duì)空:front=rear

如何盤對(duì)循環(huán)隊(duì)列堆滿?

隊(duì)滿:front=rear

那么問題就來(lái)了,隊(duì)空和隊(duì)滿的判斷條件相同,為了避免隊(duì)滿時(shí)產(chǎn)生隊(duì)空的判斷或者相反,我們需要修改隊(duì)滿條件使得隊(duì)空和堆滿的判定條件分開。
方法:浪費(fèi)一個(gè)元素空間,隊(duì)滿時(shí)數(shù)組只有一個(gè)空閑單元。隊(duì)滿條件:(rear+1)%QueueSize==front

下面是實(shí)現(xiàn)代碼:

文件CirQueue.h

#ifndef CirQueue_byNim
#define CirQueue_byNim

#include<iostream>
using namespace std;

const int QueueSize=100;  //循環(huán)隊(duì)列的最大存儲(chǔ)空間 
template <class T>
class CirQueue
{
  private:
    T *data;  //存儲(chǔ)數(shù)據(jù)的數(shù)組 
    int front,rear; //隊(duì)頭隊(duì)尾指針 
  public:
    CirQueue()
    {
      data=new T[QueueSize];
      front=rear=0;
    }
    ~CirQueue()
    {
      delete []data;
      front=rear=0;
    }
    void EnQueue(T e)
    {
      if((rear+1)%QueueSize==front)  //隊(duì)滿條件 
        throw "上溢";
      rear=(rear+1)%QueueSize;
      data[rear]=e;
    }
    T DeQueue()
    {
      if(rear==front)//隊(duì)空條件 
        throw "下溢";
      front=(front+1)%QueueSize;
      return data[front];
    }
    T GetQueue()
    {
      if(rear==front)//隊(duì)空條件 
        throw "下溢";
      return data[(front+1)%QueueSize];
    }
    bool empty()
    {
      if(front==rear) //隊(duì)空條件:front==rear 
        return true;
      return false;
    }
};

#endif

感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

上一篇:詳談c++11 final與override說明符

欄    目:C語(yǔ)言

下一篇:淺談C++左值引用和右值引用

本文標(biāo)題:C++數(shù)據(jù)結(jié)構(gòu)之實(shí)現(xiàn)循環(huán)順序隊(duì)列

本文地址:http://mengdiqiu.com.cn/a1/Cyuyan/1816.html

網(wǎng)頁(yè)制作CMS教程網(wǎng)絡(luò)編程軟件編程腳本語(yǔ)言數(shù)據(jù)庫(kù)服務(wù)器

如果侵犯了您的權(quán)利,請(qǐng)與我們聯(lián)系,我們將在24小時(shí)內(nèi)進(jìn)行處理、任何非本站因素導(dǎo)致的法律后果,本站均不負(fù)任何責(zé)任。

聯(lián)系QQ:835971066 | 郵箱:835971066#qq.com(#換成@)

Copyright © 2002-2020 腳本教程網(wǎng) 版權(quán)所有