数据结构【第三章知识点小结】

2023-03-22 16:22:38 浏览数 (1)

文章目录

  • 前言
    • 第三章知识点小结

前言

提示:这里可以添加本文要记录的大概内容:

第三章知识点小结

栈和队列的定义和特点—栈

1.定义:只能在一端(栈顶)进行插入和删除运算的线性表

2.逻辑结构:与线性表相同,仍为一对一关系。

3.存储结构:用顺序栈或链栈存储均可,但以顺序栈更常见。

4.运算规则:只能在栈顶运算,且访问结点时依照后进先出(LIFO)或先进后出(FILO,First In Last Out)的原则。

5.实现方式:基本操作有入栈、出栈、读栈顶元素值、建栈、判断栈满、栈空等。

栈和队列的定义和特点—队列

1.定义:只能在表的一端(队尾)进行插入,在另一端(队头)进行删除运算的线性表

2.逻辑结构:与线性表相同,仍为一对一关系

3.存储结构:用顺序队列或链队存储均可

4.运算规则:先进先出(FIFO)

5.实现方式:关键是编写入队和出队函数,具体实现依顺序队或链队的不同而不同

逻辑结构

存储结构

运算规则

一般线性表

一对一

顺序表、链表

随机存取、顺序存取

一对一

顺序栈、链栈

FILO

队列

一对一

顺序队、链队

FIFO

栈的表示

空栈

base == top 是栈空标志

top 指示真正的栈顶元素之上的下标地址

队列的表示

空队标志:front= =rear

入队:base[rear]=x; rear ;

rear始终指向最后一个元素的后面

出队:x=base[front]; front ;

循环队列

1.队空:front==rear

2.队满:(rear 1)%M==front

3.入队:

base[rear]=x;

rear=(rear 1)%M;

4.出队:

x=base[front];

front=(front 1)%M;

0 人点赞