diff --git a/.DS_Store b/.DS_Store index 9c67d97..be0452a 100644 Binary files a/.DS_Store and b/.DS_Store differ diff --git a/README.md b/README.md index ceb4b94..4b5157c 100644 --- a/README.md +++ b/README.md @@ -5,16 +5,16 @@ - - + +

-[Github文档](https://mmdapl.github.io/408CSFamily/) | [Gitee文档(国内访问快)]() + ## 写最前面 -> 408CSFamily 我的理解是:408计算机专业课”全家桶“,而408详细考研er都知道计算机考研专业课代码;在最新的高校计算机研究生招考中,已经越来越多的学校该考408。可见408所涉及到的专业课举足轻重的地位;不论是在考研或者找工作,我相信408的专业基础必定是难以避免的,所以话不多说、形势复杂,唯一能做的就是不停的学习、巩固基础知识,加油! +> `408CSFamily` 我的理解是:408计算机专业课”全家桶“,而408详细考研er都知道计算机考研专业课代码;在最新的高校计算机研究生招考中,已经越来越多的学校该考408。可见408所涉及到的专业课举足轻重的地位;不论是在考研或者找工作,我相信408的专业基础必定是难以避免的,所以话不多说、形势复杂,唯一能做的就是不停的学习、巩固基础知识,加油! > > 另外,本仓库收录的大部分内容将来源我自己的学习输出和相关资料的整理,将会站在上班族的角度进行分类、输出,若有任何疑惑和问题,欢迎在github仓库集中pr或issues提出 @@ -34,7 +34,7 @@ > 更新优化中... -## 目录(善用Ctrl+F) +## 大纲目录(善用Ctrl+F) > 注意:没有链接的没写 diff --git a/数据结构/.DS_Store b/数据结构/.DS_Store index 34b0e50..5bef81d 100644 Binary files a/数据结构/.DS_Store and b/数据结构/.DS_Store differ diff --git a/数据结构/数据结构.xmind b/数据结构/数据结构.xmind index 62f75ed..8ca9ee9 100644 Binary files a/数据结构/数据结构.xmind and b/数据结构/数据结构.xmind differ diff --git a/数据结构/栈和队列/.DS_Store b/数据结构/栈和队列/.DS_Store index e3a7f5a..e0ec3bd 100644 Binary files a/数据结构/栈和队列/.DS_Store and b/数据结构/栈和队列/.DS_Store differ diff --git a/数据结构/栈和队列/1.基本概念和基本操作.md b/数据结构/栈和队列/1.栈的基本概念和基本操作.md similarity index 100% rename from 数据结构/栈和队列/1.基本概念和基本操作.md rename to 数据结构/栈和队列/1.栈的基本概念和基本操作.md diff --git a/数据结构/栈和队列/2.顺序存储结构.md b/数据结构/栈和队列/2.栈的顺序存储结构.md similarity index 100% rename from 数据结构/栈和队列/2.顺序存储结构.md rename to 数据结构/栈和队列/2.栈的顺序存储结构.md diff --git a/数据结构/栈和队列/3.链式存储结构.md b/数据结构/栈和队列/3.栈的链式存储结构.md similarity index 100% rename from 数据结构/栈和队列/3.链式存储结构.md rename to 数据结构/栈和队列/3.栈的链式存储结构.md diff --git a/数据结构/栈和队列/4.队列的基本概念和基础操作.md b/数据结构/栈和队列/4.队列的基本概念和基础操作.md new file mode 100644 index 0000000..36be4e6 --- /dev/null +++ b/数据结构/栈和队列/4.队列的基本概念和基础操作.md @@ -0,0 +1,53 @@ + + + + +## 队列的基本概念和基础操作 + + +### 基本概念 + +`队列`:和栈一样,是一种操作受限制的线性表,只允许在表的一端进行插入,在表的另外一端进行删除,简称为`队`,常记作:`Queue` + +`入队`: 向队列中插入元素,也叫做`进队` + +`出队`: 删除队列元素,也叫做`离队` + + +![](/数据结构/栈和队列/images/队列的基本结构.png) + +结合生活中排队的经验,在群体素质高、无人插队的情况下(`薛定谔排队`,噗呲,哈哈哈),**一般最早排队的也是最早离队的**,和栈的`后进先出`不一样的是,队列是`先进先出`的,即:First In Frist Out + +> Tips +> - 栈:又叫做后进先出的线性表 +> - 队列:又叫做先进先出的线性表 + + + +`队头`:允许进行删除操作的一端,也叫做`队首`,常记作:`Front` + +`队尾`:允许进行插入操作的一端,常记作:`Rear` + +`空队列`:不含任何元素的空表,注意这个表是指`线性表` + + + + +### 基础操作 + + +> 和栈一样,队列是操作受限的线性表,具有`先进先出`的特性,不是任何对线性表的操作都可以作为队列的操作。例如:无法随便读取到队列中间的某个数据,需要将前面的元素先出队 + + +- `InitQueue(&Q)`: 初始化一个队列,构造空队列Q +- `QueueEmpty(Q)`: 判断队列是否为空,队空返回true,否则返回false +- `EnEmpty(&Q,x)`: 入队,如果队列Q未满,将x入队,成为新的队尾元素 +- `DeEmpty(&Q,&x)`: 出队,如果队列Q非空,删除队头元素,复制给x返回 +- `GetHead(Q,&x)`: 读取队头元素,如果队列Q非空,则将队头元素赋值给x diff --git a/数据结构/栈和队列/images/队列的基本结构.png b/数据结构/栈和队列/images/队列的基本结构.png new file mode 100644 index 0000000..c1477da Binary files /dev/null and b/数据结构/栈和队列/images/队列的基本结构.png differ