From 7506969bd5eb8744e2dc8e0729e80fdb9a7aa575 Mon Sep 17 00:00:00 2001 From: mmdapl <2237221210@qq.com> Date: Thu, 18 Mar 2021 08:14:17 +0800 Subject: [PATCH] add sq Queue --- .DS_Store | Bin 8196 -> 8196 bytes 数据结构/.DS_Store | Bin 10244 -> 10244 bytes 数据结构/栈和队列/.DS_Store | Bin 6148 -> 6148 bytes 数据结构/栈和队列/5.队列的顺序存储结构.md | 87 +++++++++++++++++- 数据结构/栈和队列/images/.DS_Store | Bin 6148 -> 6148 bytes 数据结构/栈和队列/images/循环队列初始化.png | Bin 0 -> 22553 bytes 数据结构/栈和队列/images/队列队满情况分析.png | Bin 0 -> 23566 bytes 7 files changed, 84 insertions(+), 3 deletions(-) create mode 100644 数据结构/栈和队列/images/循环队列初始化.png create mode 100644 数据结构/栈和队列/images/队列队满情况分析.png diff --git a/.DS_Store b/.DS_Store index dae4bc13410e853f506189608529a8e2d07235aa..be0452a4eab1adfe628be840d5803193d636271c 100644 GIT binary patch delta 24 fcmZp1XmQx!EW~bMX0D@PVLJJ}u+!!qp$c9AUc3jO delta 24 fcmZp1XmQx!EW~bXYNDfHWH9-?u+!!qp$c9AUB3s6 diff --git a/数据结构/.DS_Store b/数据结构/.DS_Store index d7865629aad9f24b568cb2ac3cc7755e6b1637b0..f2a4426df48fe529bc9924c5c9be36bff515c383 100644 GIT binary patch delta 56 zcmV-80LTA?P=rvhp%VeflkF9N2^V{NGdV0EIWdzg6dnPXlS>pI0hzOF6r2mQ1|a(c O0gscB6%(@-74HHm{t~nR delta 29 lcmZn(XbIS`P@&dvPqPg8348g3c~;Z diff --git a/数据结构/栈和队列/.DS_Store b/数据结构/栈和队列/.DS_Store index 7d26edab71df2ab6f84a44115760eea476c8f1fd..e4555633e54482427ca06d5f3607f7a1793ea209 100644 GIT binary patch delta 47 zcmZoMXffE(%F1|ZavN&{w`6s-k%5Vhg07+EWC1og##xi~+2k2#Z}w-~&bXPK<1aq| DT{I37 delta 46 zcmZoMXffE(%F1|havN&{mqc~7g_*gIf`#d1K{h$YnUf9J @@ -38,7 +38,7 @@ typedef struct { 则: -- 初始状态:`Q.front`===`Q.rear`===0 +- 初始状态(**队空条件**):`Q.front`===`Q.rear`===0 - 入队操作:队不满时,先赋值给队尾元素,再移动队尾指针+1 - 出队操作: 队不空时,先取队头元素值,再移动队头指针+1 @@ -85,4 +85,85 @@ typedef struct { -### 循环队列 \ No newline at end of file +### 循环队列 + +在上面的顺序队列中,当队满后进行出队列,由于顺序队列出队只在队首进行操作,并且只会修改队首指针,这时候就会出现队尾指针一直`Q.rear===MaxSize`情况,就如下: + + +![队列队满情况分析](/数据结构/栈和队列/images/队列队满情况分析.png) + +可以很明显的看到,明明队列不满,但是由于进队列只能在队尾操作,因此不能进行进队操作;通常在这种情况下入队就会出现“上溢出”。 + +> 需要明确的是:上溢出并不是真正的溢出,只是表明在顺序队列中队不满却无法入队的情况,是一种假的”溢出“ + + + + +这种情况在顺序队列中是非常常见的,也是顺序队列的一大缺点。为了克服这个缺点,计算机先贤们总是能够有很多很好的办法,这里不得不佩服!!,所以就有了循环队列,**一个将顺序队列臆想为一个环状的空间** + + +> 很多时候就是这样,为了解决一个问题,从而衍生出一个新的知识 + + +`循环队列`:把顺序队列臆想为一个环状的空间,将存储队列元素的表从逻辑上看做为一个环 + + + +![](/数据结构/栈和队列/images/循环队列初始化.png) + + +当队首指针`Q.front=MaxSize-1`后,再有元素`出队`就前进一个位置自动到位置0了【注意:可以结合时钟来理解,一圈转完了】 + + +- 初始时:`Q.front=Q.rear=0` +- 队首指针进1: `Q.front=(Q.front+1)%MaxSize` +- 队尾指针进1: `Q.rear=(Q.rear+1)%MaxSize` +- 队列长度: `(Q.rear+MaxSize-Q.front)%MaxSize` + + +是不是理解起来有点抽象,其实我最开始学到这里的时候,也不明白为什么要用`除法取余运算(%)`来实现。后来我看看了手机上的时钟指针,一圈两圈三圈的转,好像就开始悟了... + + +**和时钟一样,顺时钟进行时间变换,在出队、入队时,队首、队尾指针都是按顺时针方向进1** + + + + + +### 代码实现 + + +#### 初始化空队列 + + +```C++ + +void InitQueque(&Q){ + Q.front=Q.rear=0; +} +``` + +#### 队列是否为空 + +```C++ + +bool isEmpaty(Q){ + if(Q.rear=Q.front){ + return false; + }else{ + return false; + } +} + +``` + + +#### 入队 + +```C++ + +bool EnSqQueue(SqQueue) + +``` + +#### 出队 \ No newline at end of file diff --git a/数据结构/栈和队列/images/.DS_Store b/数据结构/栈和队列/images/.DS_Store index 330762ae1a876b3dabf185a80265ebd1a96c1f81..81d25207eb2a76744ffc0ea2b17c88c6298e3722 100644 GIT binary patch delta 262 zcmZoMXfc=|#>B)qu~2NHo}wrR0|Nsi1A_nqLmorAXHI@{Qcix-=8cTY896~xY=NoM z<{9 delta 105 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 literal 0 HcmV?d00001 diff --git a/数据结构/栈和队列/images/队列队满情况分析.png b/数据结构/栈和队列/images/队列队满情况分析.png new file mode 100644 index 0000000000000000000000000000000000000000..33db4d8fdcce35a8823799978f44add37b2fe00b GIT binary patch literal 23566 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