中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當前位置: 首頁 > news >正文

網(wǎng)站建設免湖南seo網(wǎng)站開發(fā)

網(wǎng)站建設免,湖南seo網(wǎng)站開發(fā),刷單平臺網(wǎng)站建設,山西晉城網(wǎng)站建設隊列 隊列的概念及結構 隊列:只允許在一端進行插入數(shù)據(jù)操作,在另一端進行刪除數(shù)據(jù)操作的特殊線性表,隊列具有先進先出 FIFO(First In First Out) 入隊列:進行插入操作的一端稱為隊尾 出隊列:進行刪除操作的一端稱為隊…

在這里插入圖片描述

隊列

隊列的概念及結構

隊列:只允許在一端進行插入數(shù)據(jù)操作,在另一端進行刪除數(shù)據(jù)操作的特殊線性表,隊列具有先進先出
FIFO(First In First Out) 入隊列:進行插入操作的一端稱為隊尾 出隊列:進行刪除操作的一端稱為隊頭
在這里插入圖片描述

隊列的實現(xiàn)

隊列也可以數(shù)組和鏈表的結構實現(xiàn),使用鏈表的結構實現(xiàn)更優(yōu)一些,因為如果使用數(shù)組的結構,出隊列在數(shù)
組頭上出數(shù)據(jù),效率會比較低
在這里插入圖片描述

// 鏈式結構:表示隊列
typedef struct QListNode
{ struct QListNode* _pNext; QDataType _data; 
}QNode; 
// 隊列的結構
typedef struct Queue
{ QNode* _front; QNode* _rear; 
}Queue; 
// 初始化隊列
void QueueInit(Queue* q); 
// 隊尾入隊列
void QueuePush(Queue* q, QDataType data); 
// 隊頭出隊列
void QueuePop(Queue* q); 
// 獲取隊列頭部元素
QDataType QueueFront(Queue* q); 
// 獲取隊列隊尾元素
QDataType QueueBack(Queue* q); 
// 獲取隊列中有效元素個數(shù)
int QueueSize(Queue* q); 
// 檢測隊列是否為空,如果為空返回非零結果,如果非空返回0 
int QueueEmpty(Queue* q); 
// 銷毀隊列
void QueueDestroy(Queue* q);

總的代碼如下

#include "Queue.h"void QueueInit(Que* pq)
{assert(pq);pq->head = pq->tail = NULL;pq->size = 0;
}void QueueDestroy(Que* pq)
{assert(pq);QNode* cur = pq->head;while (cur){QNode* next = cur->next;free(cur);cur = next;}pq->head = pq->tail = NULL;pq->size = 0;
}void QueuePush(Que* pq, QDataType x)
{assert(pq);QNode* newnode = (QNode*)malloc(sizeof(QNode));if (newnode == NULL){perror("malloc fail");exit(-1);}newnode->data = x;newnode->next = NULL;if (pq->tail == NULL){pq->head = pq->tail = newnode;}else{pq->tail->next = newnode;pq->tail = newnode;}pq->size++;
}void QueuePop(Que* pq)
{assert(pq);assert(!QueueEmpty(pq));if (pq->head->next == NULL){free(pq->head);pq->head = pq->tail = NULL;}else{QNode* next = pq->head->next;free(pq->head);pq->head = next;}pq->size--;
}QDataType QueueFront(Que* pq)
{assert(pq);assert(!QueueEmpty(pq));return pq->head->data;
}QDataType QueueBack(Que* pq)
{assert(pq);assert(!QueueEmpty(pq));return pq->tail->data;
}bool QueueEmpty(Que* pq)
{assert(pq);return pq->head == NULL;
}int QueueSize(Que* pq)
{assert(pq);return pq->size;
}
#pragma once#include<stdio.h>
#include<stdlib.h>
#include<assert.h>
#include<stdbool.h>typedef int QDataType;
typedef struct QueueNode
{struct QueueNode* next;QDataType data;
}QNode;typedef struct Queue
{QNode* head;QNode* tail;int size;
}Que;void QueueInit(Que* pq);
void QueueDestroy(Que* pq);
void QueuePush(Que* pq, QDataType x);
void QueuePop(Que* pq);
QDataType QueueFront(Que* pq);
QDataType QueueBack(Que* pq);
bool QueueEmpty(Que* pq);
int QueueSize(Que* pq);
http://www.risenshineclean.com/news/54013.html

相關文章:

  • 設計公司網(wǎng)站建設2022年最近十大新聞
  • 唐山房產(chǎn)網(wǎng)站建設東莞網(wǎng)絡推廣平臺
  • 微信網(wǎng)站建設公司衡水seo優(yōu)化
  • 怎么做彩票網(wǎng)站seol英文啥意思
  • 棗莊網(wǎng)站設計怎么有自己的網(wǎng)站
  • 三亞高端服務網(wǎng)站輕松seo優(yōu)化排名 快排
  • 企業(yè)做網(wǎng)站建設鎮(zhèn)江網(wǎng)站建設
  • 廣州市網(wǎng)站建設制作設計平臺廣州今天新聞
  • 蘄春做網(wǎng)站google瀏覽器入口
  • b2b貿(mào)易網(wǎng)站公司推廣渠道
  • 硬盤做網(wǎng)站空間漢中seo培訓
  • 武漢網(wǎng)站建設哪家好電腦培訓班附近有嗎
  • pcb設備網(wǎng)站怎么做適合seo軟件
  • 鄭州高端建站公司中國搜索引擎有哪些
  • 如何建立新聞網(wǎng)站搜索引擎bing
  • 西安php網(wǎng)站開發(fā)培訓班信息流廣告哪個平臺好
  • 網(wǎng)站制作技巧南京百度快速排名優(yōu)化
  • 網(wǎng)站開發(fā)服務流程廣州seo網(wǎng)絡營銷培訓
  • 購物網(wǎng)站用html怎么做怎么樣做一個自己的網(wǎng)站
  • dede企業(yè)網(wǎng)站模板下載sem和seo的區(qū)別
  • 做外貿(mào)要建什么網(wǎng)站百度收錄批量查詢
  • 做美國市場哪個網(wǎng)站好百度搜索競價
  • 陜西省教育類網(wǎng)站前置審批新聞危機公關
  • 重慶找做墩子網(wǎng)站新冠病毒最新消息
  • 做公司網(wǎng)站計入什么會計科目網(wǎng)絡seo優(yōu)化推廣
  • 建站公司沒前端網(wǎng)站推廣app下載
  • 微信網(wǎng)站開發(fā)有中院管轄呢網(wǎng)站制作公司網(wǎng)站
  • 企業(yè)網(wǎng)站服務器建設方法最好的網(wǎng)站推廣軟件
  • 網(wǎng)站制作網(wǎng)址網(wǎng)絡推廣方法怎么做
  • 南京網(wǎng)站建設公司 w搜索引擎優(yōu)化專員