最近几天在学习数据结构的相关的内容。因为着急找工作,学得比较粗糙。写点东西,就当整理最近几天的学习。不复习真的会忘额~
---------------------分--------------割---------线-------------------------------------------------------------------------------
一、栈
2、性质:先进后出
3、栈的常见操作: 创建、销毁、清空、进(出)栈、获取栈顶元素、获取栈的长度
4、若栈存在一个元素,top=0;
空栈的条件:top=-1;
5、链栈
栈的链式存储结构 栈的链式存储结构,简称为链栈;
栈顶放在单链表的头部;
链栈是不需要头结点的。
链栈不存在栈满的情况。
空栈的时候,链表原定义是头指针指向空。即top=NULL;
二、队列
1、概念
队列是特殊的线性表;队列仅在线性表两端进行操作;队头(Front):取出数据的一端;队尾(Rear):放入数据的一端;
2、性质:先进先出
3、常见的操作:创建队列、销毁队列、清空队列、进队列、出队列、获取队头元素、获取队列长度
4、循环队列:
把头尾相接的顺序存储结构称为循环队列;
判断队列满的条件:
(rear+1)%QueueSize==front;
通用的计算队列长度公式为:
(rear-front+QueueSize)%QueueSize;