数据结构之线性结构总结

发布于:2022-10-19 ⋅ 阅读:(259) ⋅ 点赞:(0)

什么是线性结构?

线性结构是一个数据元素有序集。它包括:线性表,栈,队列,双队列等。

其基本特征为:

*集合中存在唯一的第一个元素

*集合中存在唯一的最后一个元素

*除第一个元素外,都存在唯一的直接前驱

*除最后一个元素外,都存在唯一的直接后继

(是有限序列,所有元素之间的性质都相同,元素之间的关系是线性的)

一  顺序表

1.知识点

用一组地址连续的存储单元依次存储线性表中的各元素,通过位置表示结点之间的逻辑关系

图示

 

 

 

 顺序表的每个数据元素占用相同数量的存储空间,逻辑上相邻的数据元素物理次序上也相邻,相邻两个数据元素Ki与Ki+1存储位置的关系:Lok(Ki+1)=Loc(Ki)+c,第i个元素Ki的存储位置为Loc(Ki)=Loc(K0)+i*c

 

   链表

1.知识点

 用一组任意的存储单元存储线性表中各元素,通过指针来表示数据元素之间的逻辑关系

图示

 

 

*每个数据元素占用相同数量的存储空间

*数据元素的逻辑顺序与物理顺序不一致

*数据元素之间的逻辑关系由结点中的指针来表示

 

三  栈

 1.知识点

*栈和队列是操作受限的线性表

*栈限定在表尾进行插入或删除表尾端称栈顶表头端称栈底

*栈的特点:后进先出(LIFO)

 图示

 

 顺序栈

 顺序栈是一个静态结构,需要提前分配好空间位置

进栈:MAXNUM是栈中最大元素个数,当栈中已经由这么多元素时,再进行进栈操作,就会产生溢出,称为上溢(overflow)

出栈:对出栈运算时,需要判断是否为空栈,否则同样会产生溢出,称为下溢(underflow)

 2.应用

 进制转换,括号匹配,“聪明的学生”,迷宫,表达式求值

 链栈

 四  队列

1.知识点 

*队列限定在一端进行插入一端删除插入端称队尾删除端称队头

*队列的特点:先进先出(FIFO)

图示

2.应用 

 迷宫,农夫过河

 

 

 

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到