提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
数据结构
数据结构是计算机科学中的基础内容,数据结构包含三个部分:数据,数据集合上的关系以及数据集合上的一组操作。
思维导图
上图中的思维导图仅包含部分近期接触过的知识点,整理作为复习用。
关于“假溢出”现象与循环队列
“假溢出”现象
随着入队、出队的持续,队列整体向后移动,当队尾指针移动到最后,此时如果有新元素需要入队就会出现溢出,但此时队列并未真正的“满员”。这是由于队列
的队尾入、队头出造成的。
解决方案 — 循环队列
解决假溢出的方法之一的就是将队列的数据区看作是首尾相接的循环队列。
但与此同时是就会产生另一个问题:那就是队满与队空的条件相同了
sq->front == sq->rear
解决方案 —少用一个元素空间 或 预设存储的元素个数
方法一: 预设存储元素个数
队空 num == 0
队满 num ==N
方法二: 少用一个元素空间
队满: (sq->rear+1)% N = sq->front
此时的状态就是队尾指针加一才会追上队头指针,队空也是同样的道理。
总结
通过总结笔记和查阅书籍,通过思维导图对这两天学习的数据结构有了一些整体的但还不算全面的认识。当然,关于查找与排序算法还在进一步学习当中,之后也会进一步完善相关部分。