最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言實(shí)現(xiàn)循環(huán)隊(duì)列

 更新時間:2020年07月27日 14:07:08   作者:AdvancedPawn  
這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)循環(huán)隊(duì)列,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了C語言實(shí)現(xiàn)循環(huán)隊(duì)列的具體代碼,供大家參考,具體內(nèi)容如下

注意事項(xiàng):

1、循環(huán)隊(duì)列,是隊(duì)列的順序表示和實(shí)現(xiàn)。因?yàn)槭俏策M(jìn)頭出,所以和順序棧不同的是需要將順序隊(duì)列臆造成一個環(huán)狀的空間,以便在尾部添加滿之后從頭部空位開始插入。
2、也可以使用數(shù)組隊(duì)列,也就是不能動態(tài)增長的順序隊(duì)列,這樣不需要每次取模最大值來構(gòu)成環(huán)形空間。每次插入新的隊(duì)列尾元素時,尾指針增1,每當(dāng)刪除隊(duì)列頭元素時,頭指針增1。
3、尾指針會出現(xiàn)在頭指針之前,由此特性,循環(huán)隊(duì)列在無法預(yù)估使用大小時,不宜使用。
4、在每一個指針遞增的表達(dá)式中,都要加上一個% MAXQUEUE已使得每一次增值都在范圍內(nèi)。

#include<stdio.h>
#include<stdlib.h>
#define MAXQUEUE 100
typedef struct
{
 int *base;
 int front;
 int rear;
}SqQueue, *Sqqueue;
 
Sqqueue Creat(Sqqueue q);
void Enqueue(Sqqueue q, int e);
void Dequeue(Sqqueue q, int *e);
void Traverse(Sqqueue q);
 
int main()
{
 SqQueue q;
 int e;
 Sqqueue p = Creat(&q);
 Traverse(p);
 Dequeue(p, &e);
 Traverse(p);
 printf("the number that was deleted is :%d", e);
 return 0;
}
 
Sqqueue Creat(Sqqueue q)
{
 Sqqueue p = q;
 p->base = (int *)malloc(MAXQUEUE * sizeof(int));//這里注意和鏈不同,開辟的是整片的數(shù)據(jù)空間,以base為基址
 p->front = p->rear = 0;             
 for (int i = 1; i < 10; i++)
 Enqueue(p, i);
 return p;
}
void Enqueue(Sqqueue q, int e)
{
 if ((q->rear + 1) % MAXQUEUE == q->front) //如果尾指針下一個是頭指針,即將其看成滿隊(duì)列(少利用一個空間)。否則只看頭指針等于尾指針會有歧義。
 exit(1);
 q->base[q->rear] = e;
 q->rear = (q->rear + 1) % MAXQUEUE;
 
}
void Dequeue(Sqqueue q, int *e)
{
 if (q->front == q->rear)
 exit(1);
 (*e) = q->base[q->front];
 q->front = (q->front + 1) % MAXQUEUE;
}
void Traverse(Sqqueue q)
{
 for (int i = q->front; q->rear != i; i = (i + 1) % MAXQUEUE)
 printf("%d->", q->base[i]);
 printf("NULL\n");
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C語言 將字符串逆序輸出的實(shí)例

    C語言 將字符串逆序輸出的實(shí)例

    這篇文章主要介紹了C語言將字符串逆序輸出的實(shí)例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-02-02
  • C++求最大公約數(shù)四種方法解析

    C++求最大公約數(shù)四種方法解析

    這篇文章主要為大家詳細(xì)介紹了C++求最大公約數(shù)四種方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • C語言實(shí)現(xiàn)生成新春福字的示例詳解

    C語言實(shí)現(xiàn)生成新春福字的示例詳解

    這篇文章主要介紹了如何利用C語言實(shí)現(xiàn)生成各個字體的新春福字,再也不用擔(dān)心支付寶掃福找不到圖片了,感興趣的同學(xué)可以跟隨小編學(xué)習(xí)一下
    2022-01-01
  • OpenCV實(shí)現(xiàn)簡易標(biāo)定板

    OpenCV實(shí)現(xiàn)簡易標(biāo)定板

    這篇文章主要為大家詳細(xì)介紹了OpenCV實(shí)現(xiàn)簡易標(biāo)定板,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • C++生成格式化的標(biāo)準(zhǔn)字符串實(shí)例代碼

    C++生成格式化的標(biāo)準(zhǔn)字符串實(shí)例代碼

    這篇文章主要給大家介紹了關(guān)于C++生成格式化的標(biāo)準(zhǔn)字符串的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用C++具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-09-09
  • C++中兩種字符串定義方式和區(qū)別介紹

    C++中兩種字符串定義方式和區(qū)別介紹

    大家好,本篇文章主要講的是C++中兩種字符串定義方式和區(qū)別介紹,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • 淺談C++繼承中的名字查找

    淺談C++繼承中的名字查找

    下面小編就為大家?guī)硪黄獪\談C++繼承中的名字查找。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01
  • matlab?GUI指紋識別門禁系統(tǒng)介紹及源碼實(shí)現(xiàn)

    matlab?GUI指紋識別門禁系統(tǒng)介紹及源碼實(shí)現(xiàn)

    這篇文章主要為大家介紹了matlab?GUI指紋識別門禁系統(tǒng)的介紹及源碼實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-02-02
  • Qt Design Studio安裝圖文教程

    Qt Design Studio安裝圖文教程

    本文主要介紹了Qt Design Studio安裝圖文教程,文中通過圖文介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • C++教程(超長最全入門)

    C++教程(超長最全入門)

    這篇文章主要介紹了C++教程(超長最全),需要的朋友可以參考下
    2023-05-05

最新評論

永福县| 龙山县| 阳山县| 黄山市| 宜昌市| 滦南县| 怀来县| 吉木乃县| 长泰县| 谷城县| 徐汇区| 司法| 瓮安县| 陆良县| 丰县| 黔南| 邻水| 卓资县| 胶南市| 河北区| 乳山市| 交口县| 嘉祥县| 伊吾县| 青阳县| 嘉黎县| 崇州市| 洱源县| 宜兰县| 松阳县| 克山县| 内江市| 通渭县| 任丘市| 云梦县| 遂川县| 济源市| 手游| 新龙县| 南宁市| 天等县|